結果
問題 |
No.3205 Range Pairwise Xor Query
|
ユーザー |
![]() |
提出日時 | 2025-07-18 21:31:43 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 1,438 ms / 2,000 ms |
コード長 | 472 bytes |
コンパイル時間 | 492 ms |
コンパイル使用メモリ | 82,432 KB |
実行使用メモリ | 154,912 KB |
最終ジャッジ日時 | 2025-07-30 09:20:27 |
合計ジャッジ時間 | 18,456 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 |
other | AC * 20 |
ソースコード
N,Q=map(int,input().split()) v=[[0]*(N+1) for i in range(30)] A=list(map(int,input().split())) for k in range(30): for i in range(N): x=A[i] if (x>>k)&1: v[k][i]=1 for k in range(30): for i in range(1,N): v[k][i]+=v[k][i-1] for _ in range(Q): l,r=map(int,input().split()) result=0 r-=1 l-=1 c=r-l+1 for k in range(30): a=v[k][r]-v[k][l-1] b=c-a result+=a*b*2**k print(result)