結果

問題 No.2592 おでぶなおばけさん 2
ユーザー 👑 p-adic
提出日時 2023-12-21 08:57:13
言語 PyPy3
(7.3.15)
結果
TLE  
(最新)
AC  
(最初)
実行時間 -
コード長 579 bytes
コンパイル時間 362 ms
コンパイル使用メモリ 82,372 KB
実行使用メモリ 96,184 KB
最終ジャッジ日時 2024-09-27 10:50:54
合計ジャッジ時間 158,095 ms
ジャッジサーバーID
(参考情報)
judge2 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1
other AC * 78 TLE * 5
権限があれば一括ダウンロードができます

ソースコード

diff #

B=12
R=range
J=lambda:map(int,input().split())
N,Q,K=J()
A=list(J())
while N%B:
	A+=[0]
	N+=1
N//=B
def Add(i,t,F):
	i+=1
	while i<=N:F[i],i=F[i]+t,i+(i&-i)
def InitialSum(r,F):
	a=0
	i=min(r+1,N)
	while i:a,i=a+F[i],i-(i&-i)
	return a
def IntervalSum(l,r,F):
	return InitialSum(r,F)-InitialSum(l-1,F)
bit=[[0]*(N+1)for i in R(B)]
for i in R(B):
	for j in R(N):Add(j,A[j*B+i],bit[i])
for q in R(Q):
	l,r=J()
	k=K
	l,t,p=l-1,0,1
	for i in R(B):
		x,y=l//B,(r-1)//B
		if l>x*B+i:x+=1
		if y*B+i>r-1:y-=1
		t,p=t+(0if x>y else IntervalSum(x,y,bit[i])*p),p*k
	print("YNeos"[t==0::2])
0