結果
| 問題 |
No.1779 Magical Swap
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2023-01-16 12:05:10 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 521 ms / 2,000 ms |
| コード長 | 762 bytes |
| コンパイル時間 | 432 ms |
| コンパイル使用メモリ | 82,176 KB |
| 実行使用メモリ | 117,244 KB |
| 最終ジャッジ日時 | 2024-12-30 17:29:48 |
| 合計ジャッジ時間 | 4,690 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 1 |
| other | AC * 18 |
ソースコード
from collections import defaultdict
T=int(input())
for _ in range(T):
N=int(input())
A=list(map(int,input().split()))
B=list(map(int,input().split()))
if A[0]!=B[0]:
print("No")
continue
dict_A=defaultdict(int)
dict_B=defaultdict(int)
ans="Yes"
check=[False]*(N+1)
for i in range(2,N+1):
if check[i]:
continue
if 2*i>N:
if A[i-1]!=B[i-1]:
ans="No"
continue
for j in range(i,N+1,i):
if check[j]:
continue
check[j]=True
dict_A[A[j-1]]+=1
dict_B[B[j-1]]+=1
for k in dict_A.keys():
if dict_A[k]!=dict_B[k]:
ans="No"
break
print(ans)