結果

問題 No.1142 XOR と XOR
ユーザー stngstng
提出日時 2022-09-05 22:06:15
言語 PyPy3
(7.3.15)
結果
TLE  
実行時間 -
コード長 954 bytes
コンパイル時間 185 ms
コンパイル使用メモリ 82,408 KB
実行使用メモリ 198,152 KB
最終ジャッジ日時 2024-11-20 23:03:33
合計ジャッジ時間 48,490 ms
ジャッジサーバーID
(参考情報)
judge3 / judge1
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 48 ms
68,532 KB
testcase_01 AC 51 ms
161,476 KB
testcase_02 AC 51 ms
67,788 KB
testcase_03 TLE -
testcase_04 TLE -
testcase_05 TLE -
testcase_06 TLE -
testcase_07 TLE -
testcase_08 TLE -
testcase_09 TLE -
testcase_10 TLE -
testcase_11 AC 53 ms
62,028 KB
testcase_12 AC 52 ms
60,640 KB
testcase_13 AC 51 ms
60,656 KB
testcase_14 AC 1,800 ms
92,180 KB
testcase_15 AC 1,711 ms
93,028 KB
testcase_16 AC 193 ms
76,520 KB
testcase_17 TLE -
testcase_18 AC 624 ms
79,040 KB
testcase_19 TLE -
testcase_20 AC 1,732 ms
92,164 KB
testcase_21 AC 1,105 ms
85,100 KB
testcase_22 AC 616 ms
80,252 KB
testcase_23 TLE -
testcase_24 TLE -
testcase_25 AC 1,594 ms
91,172 KB
testcase_26 TLE -
testcase_27 TLE -
権限があれば一括ダウンロードができます

ソースコード

diff #

n,m,k = map(int,input().split())
a = [int(i) for i in input().split()]
b = [int(i) for i in input().split()]

mod = 10**9+7
ngs = 1024#1024

arui = [0]*(ngs)
arui[0] = 1
ali = [0]*(ngs)

for i in range(n):
    narui = [0]*ngs
    narui[0] = 1
    for j in range(ngs):
        narui[j^a[i]] += arui[j]
        #narui[j^a[i]] %= mod
    arui = narui[:]
    for j in range(ngs):
        if j == 0:
            ali[j] += arui[j]-1
        else:
            ali[j] += arui[j]
        #ali[j] %= mod

brui = [0]*(ngs)
brui[0] = 1
bli = [0]*(ngs)

for i in range(m):
    nbrui = [0]*ngs
    nbrui[0] = 1
    for j in range(ngs):
        nbrui[j^b[i]] += brui[j]
        #nbrui[j^b[i]] %= mod
    brui = nbrui[:]
    for j in range(ngs):
        if j == 0:
            bli[j] += brui[j]-1
        else:
            bli[j] += brui[j]
        #bli[j] %= mod
#print(ali,bli)
#exit()
ans = 0
for i in range(ngs):
    ans += ali[i]*bli[i^k]
    ans %= mod

print(ans)
0