結果
| 問題 |
No.2359 A in S ?
|
| コンテスト | |
| ユーザー |
titia
|
| 提出日時 | 2023-06-24 00:16:49 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 823 bytes |
| コンパイル時間 | 179 ms |
| コンパイル使用メモリ | 82,412 KB |
| 実行使用メモリ | 280,592 KB |
| 最終ジャッジ日時 | 2024-07-01 04:03:20 |
| 合計ジャッジ時間 | 4,445 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 2 TLE * 1 -- * 15 |
ソースコード
import sys
input = sys.stdin.readline
from collections import deque
N,M=map(int,input().split())
LRXY=[list(map(int,input().split())) for i in range(N)]
A=list(map(int,input().split()))
ANS=[0]*(10**5+1)
LIST=[[] for i in range(10**5+1)]
for l,r,x,y in LRXY:
a=l//x*x+y-x
while a<l:
a+=x
b=r//x*x+y-x
while b<=r:
b+=x
LIST[x].append([a,1])
LIST[x].append([b,-1])
for x in range(10**5+1):
if LIST[x]==[]:
continue
LIST[x].sort()
Q=deque()
for ind,com in LIST[x]:
while Q and Q[0][0]<ind:
a,b=Q.popleft()
if b!=0:
ANS[a]+=b
Q.append([a+x,b])
if Q and ind==Q[0][0]:
Q[0][1]+=com
else:
Q.append([ind,com])
for a in A:
print(ANS[a])
titia