結果
| 問題 | No.2254 Reverse Only |
| コンテスト | |
| ユーザー |
detteiuu
|
| 提出日時 | 2026-08-24 01:01:15 |
| 言語 | PyPy3 (7.3.17) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 872 bytes |
| 記録 | |
| コンパイル時間 | 885 ms |
| コンパイル使用メモリ | 95,476 KB |
| 実行使用メモリ | 144,128 KB |
| 最終ジャッジ日時 | 2026-08-24 01:01:33 |
| 合計ジャッジ時間 | 12,584 ms |
|
ジャッジサーバーID (参考情報) |
judge3_1 / judge2_0 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 42 WA * 5 |
ソースコード
HMOD = 1145141919810011
N, K = map(int, input().split())
A = list(map(int, input().split()))
B = list(map(int, input().split()))
if A == B:
exit(print("Yes"))
if N < K or sorted(A) != sorted(B):
exit(print("No"))
if N == K:
if A[::-1] == B:
print("Yes")
else:
print("No")
exit()
if K+2 <= N:
exit(print("Yes"))
base = 10**6
def func(A, B):
hashA = 0
hashB = 0
for a in A[::-1]:
hashA = (hashA*base+a)%HMOD
for b in B[::-1]:
hashB = (hashB*base+b)%HMOD
inv = pow(base, -1, HMOD)
n = pow(base, N-1, HMOD)
for i in range(N):
if hashA == hashB:
return True
hashA -= A[i]
hashA %= HMOD
hashA *= inv
hashA %= HMOD
hashA += A[i]*n%HMOD
hashA %= HMOD
return True
print("Yes" if func(A, B) or func(A[::-1], B) else "No")
detteiuu