結果
| 問題 | No.3714 Prefix Team Name |
| コンテスト | |
| ユーザー |
titia
|
| 提出日時 | 2026-09-18 23:50:44 |
| 言語 | PyPy3 (7.3.23 + ACL) |
| 結果 |
AC
不安定
|
| 実行時間 | 819 ms / 2,000 ms |
| + 499µs | |
| コード長 | 3,431 bytes |
| 記録 | |
| コンパイル時間 | 77 ms |
| コンパイル使用メモリ | 82,176 KB |
| 実行使用メモリ | 295,188 KB |
| 最終ジャッジ日時 | 2026-09-18 23:51:26 |
| 合計ジャッジ時間 | 15,398 ms |
|
ジャッジサーバーID (参考情報) |
judge1_1 / judge2_0 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 28 |
ソースコード
import sys
input = sys.stdin.readline
from random import randint
R=[randint(1,10**10) for i in range(151)]
R2=[randint(1,10**10) for i in range(151)]
R3=[randint(1,10**10) for i in range(151)]
ANS=[]
X=list(input().strip())
X=[ord(x)-96 for x in X]
Y=list(input().strip())
Y=[ord(x)-96 for x in Y]
Z=list(input().strip())
Z=[ord(x)-96 for x in Z]
def calc1(i,j,k):
now=1
ANS=0
ANS2=0
ANS3=0
now=0
for a in range(i):
ANS^=X[a]*R[now]
ANS2^=X[a]*R2[now]
ANS3^=X[a]*R3[now]
now+=1
for a in range(j):
ANS^=Y[a]*R[now]
ANS2^=Y[a]*R2[now]
ANS3^=Y[a]*R3[now]
now+=1
for a in range(k):
ANS^=Z[a]*R[now]
ANS2^=Z[a]*R2[now]
ANS3^=Z[a]*R3[now]
now+=1
return ANS*ANS2*ANS3
def calc2(i,j,k):
now=1
ANS=0
ANS2=0
ANS3=0
now=0
for a in range(i):
ANS^=X[a]*R[now]
ANS2^=X[a]*R2[now]
ANS3^=X[a]*R3[now]
now+=1
for a in range(k):
ANS^=Z[a]*R[now]
ANS2^=Z[a]*R2[now]
ANS3^=Z[a]*R3[now]
now+=1
for a in range(j):
ANS^=Y[a]*R[now]
ANS2^=Y[a]*R2[now]
ANS3^=Y[a]*R3[now]
now+=1
return ANS*ANS2*ANS3
def calc3(i,j,k):
now=1
ANS=0
ANS2=0
ANS3=0
now=0
for a in range(j):
ANS^=Y[a]*R[now]
ANS2^=Y[a]*R2[now]
ANS3^=Y[a]*R3[now]
now+=1
for a in range(i):
ANS^=X[a]*R[now]
ANS2^=X[a]*R2[now]
ANS3^=X[a]*R3[now]
now+=1
for a in range(k):
ANS^=Z[a]*R[now]
ANS2^=Z[a]*R2[now]
ANS3^=Z[a]*R3[now]
now+=1
return ANS*ANS2*ANS3
def calc4(i,j,k):
now=1
ANS=0
ANS2=0
ANS3=0
now=0
for a in range(j):
ANS^=Y[a]*R[now]
ANS2^=Y[a]*R2[now]
ANS3^=Y[a]*R3[now]
now+=1
for a in range(k):
ANS^=Z[a]*R[now]
ANS2^=Z[a]*R2[now]
ANS3^=Z[a]*R3[now]
now+=1
for a in range(i):
ANS^=X[a]*R[now]
ANS2^=X[a]*R2[now]
ANS3^=X[a]*R3[now]
now+=1
return ANS*ANS2*ANS3
def calc5(i,j,k):
now=1
ANS=0
ANS2=0
ANS3=0
now=0
for a in range(k):
ANS^=Z[a]*R[now]
ANS2^=Z[a]*R2[now]
ANS3^=Z[a]*R3[now]
now+=1
for a in range(i):
ANS^=X[a]*R[now]
ANS2^=X[a]*R2[now]
ANS3^=X[a]*R3[now]
now+=1
for a in range(j):
ANS^=Y[a]*R[now]
ANS2^=Y[a]*R2[now]
ANS3^=Y[a]*R3[now]
now+=1
return ANS*ANS2*ANS3
def calc6(i,j,k):
now=1
ANS=0
ANS2=0
ANS3=0
now=0
for a in range(k):
ANS^=Z[a]*R[now]
ANS2^=Z[a]*R2[now]
ANS3^=Z[a]*R3[now]
now+=1
for a in range(j):
ANS^=Y[a]*R[now]
ANS2^=Y[a]*R2[now]
ANS3^=Y[a]*R3[now]
now+=1
for a in range(i):
ANS^=X[a]*R[now]
ANS2^=X[a]*R2[now]
ANS3^=X[a]*R3[now]
now+=1
return ANS*ANS2*ANS3
for i in range(len(X)):
for j in range(len(Y)):
for k in range(len(Z)):
ANS.append(calc1(i+1,j+1,k+1))
ANS.append(calc2(i+1,j+1,k+1))
ANS.append(calc3(i+1,j+1,k+1))
ANS.append(calc4(i+1,j+1,k+1))
ANS.append(calc5(i+1,j+1,k+1))
ANS.append(calc6(i+1,j+1,k+1))
#print(ANS)
print(len(set(ANS)))
titia