提出 #75671838


ソースコード 拡げる

n,m=map(int,input().split())
lto=[[] for i in range(n)]
rto=[[] for i in range(n)]
from collections import defaultdict
dictcount=defaultdict(int)
for i in range(m):
    l,r=map(lambda x:int(x)-1,input().split())
    dictcount[(l,r)]+=1



    lto[l].append(r)
    rto[r].append(l)
for i in range(n):
    lto[i].sort()
    rto[i].sort()
qer=int(input())

def nibtan_sr(s,t):
    ok=-1
    ng=len(lto[s])
    while abs(ok-ng)>1:
        mid=(ok+ng)//2
        if lto[s][mid]<=t:
            ok=mid
        else:
            ng=mid
    if ok==-1:
        return None
    return lto[s][ok]
def nibtan_sl(s,t):
    ng=-1
    ok=len(rto[t])
    while abs(ok-ng)>1:
        mid=(ok+ng)//2
        if rto[t][mid]>=s:
            ok=mid
        else:
            ng=mid
    if ok==len(rto[t]):
        return None
    return rto[t][ok]
dp=[0 for i in range(n)]
def syakutori():
    r=0
    aaa=False
    for i in range(n):
        aaa=False
        while aaa==False:
            if not r<n:
                break
            if rto[r] and  rto[r][-1]>=i:
                aaa=True
            else:
                r+=1
        if aaa:
            dp[i]=r
        else:
            dp[i]=n+1



        

        

def check(s,t):
    if dictcount[(s,t)]>=2:
        print("Yes")
        return 
    if dp[s]<t or (s<n-1 and dp[s+1]<=t):
        print("Yes")
        return 
    else:
        print("No")
    
syakutori()
#print(dp)
for qi in range(qer):
    s,t=map(lambda x:int(x)-1,input().split())
    rx=nibtan_sr(s,t)
    ly=nibtan_sl(s,t)
   
    if rx==t or ly==s:
        check(s,t)
        continue
    else:
        if rx==None or ly==None:
            print("No")
            continue
        if ly-1<=rx:
            print("Yes")
            continue
        print("No")
        continue

    

提出情報

提出日時
問題 E - Crossing Table Cloth
ユーザ st0123
言語 Python (PyPy 3.11-v7.3.20)
得点 475
コード長 1894 Byte
結果 AC
実行時間 1327 ms
メモリ 177388 KiB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 475 / 475
結果
AC × 2
AC × 27
セット名 テストケース
Sample 00_sample_00.txt, 00_sample_01.txt
All 00_sample_00.txt, 00_sample_01.txt, 01_handmade_00.txt, 01_handmade_01.txt, 01_handmade_02.txt, 01_handmade_03.txt, 02_random_00.txt, 02_random_01.txt, 02_random_02.txt, 02_random_03.txt, 02_random_04.txt, 02_random_05.txt, 02_random_06.txt, 02_random_07.txt, 02_random_08.txt, 02_random_09.txt, 02_random_10.txt, 02_random_11.txt, 02_random_12.txt, 02_random_13.txt, 02_random_14.txt, 02_random_15.txt, 02_random_16.txt, 02_random_17.txt, 02_random_18.txt, 02_random_19.txt, 02_random_20.txt
ケース名 結果 実行時間 メモリ
00_sample_00.txt AC 68 ms 93584 KiB
00_sample_01.txt AC 69 ms 93916 KiB
01_handmade_00.txt AC 446 ms 109768 KiB
01_handmade_01.txt AC 385 ms 109888 KiB
01_handmade_02.txt AC 515 ms 110068 KiB
01_handmade_03.txt AC 585 ms 125996 KiB
02_random_00.txt AC 1261 ms 177004 KiB
02_random_01.txt AC 1257 ms 177044 KiB
02_random_02.txt AC 847 ms 124372 KiB
02_random_03.txt AC 940 ms 126436 KiB
02_random_04.txt AC 1327 ms 177252 KiB
02_random_05.txt AC 1270 ms 177324 KiB
02_random_06.txt AC 1265 ms 177388 KiB
02_random_07.txt AC 1191 ms 159012 KiB
02_random_08.txt AC 1261 ms 175640 KiB
02_random_09.txt AC 1159 ms 156796 KiB
02_random_10.txt AC 1008 ms 142368 KiB
02_random_11.txt AC 1143 ms 172596 KiB
02_random_12.txt AC 1153 ms 170276 KiB
02_random_13.txt AC 1004 ms 142360 KiB
02_random_14.txt AC 1164 ms 172584 KiB
02_random_15.txt AC 1168 ms 170476 KiB
02_random_16.txt AC 1016 ms 142116 KiB
02_random_17.txt AC 1162 ms 169044 KiB
02_random_18.txt AC 1185 ms 170452 KiB
02_random_19.txt AC 171 ms 115696 KiB
02_random_20.txt AC 234 ms 125136 KiB