結果
問題 | No.1142 XOR と XOR |
ユーザー | qumazaki |
提出日時 | 2020-09-08 18:47:05 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 154 ms / 2,000 ms |
コード長 | 726 bytes |
コンパイル時間 | 318 ms |
コンパイル使用メモリ | 81,844 KB |
実行使用メモリ | 114,304 KB |
最終ジャッジ日時 | 2024-11-08 03:49:18 |
合計ジャッジ時間 | 4,854 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 25 |
ソースコード
n,m,k = map(int,input().split()) a = list(map(int,input().split())) b = list(map(int,input().split())) mod = 10**9+7 ax = [0]*1024 bx = [0]*1024 for xx,x in zip([ax,bx],[a,b]): tmp = 0 # xx[0] += 1 for xi in x: tmp = tmp^xi xx[tmp] += 1 ax2 = [ ai*2 for ai in ax] bx2 = [ bi*2 for bi in bx] for xx,xx2 in zip([ax,bx],[ax2,bx2]): for i in range(1024): for j in range(1024): if(i==j): xx2[0] += (xx[i]*(xx[i]-1)) xx2[0] %= mod else: xx2[i ^ j] += xx[i]*xx[j] xx2[i ^ j] %= mod ans = 0 for i in range(1024): ans += ax2[i] * bx2[k^i] ans %= mod ans *= pow(4,mod-2,mod) ans %= mod print(ans)