結果
| 問題 | No.3726 Flawless Flow |
| コンテスト | |
| ユーザー |
titia
|
| 提出日時 | 2026-10-21 03:43:25 |
| 言語 | PyPy3 (8.0.0 + ACL) |
| 結果 |
WA
不安定
|
| 実行時間 | - |
| コード長 | 954 bytes |
| 記録 | |
| コンパイル時間 | 83 ms |
| コンパイル使用メモリ | 64,836 KB |
| 実行使用メモリ | 64,652 KB |
| 最終ジャッジ日時 | 2026-10-21 03:43:57 |
| 合計ジャッジ時間 | 7,863 ms |
|
ジャッジサーバーID (参考情報) |
judge6_0 / judge2_0 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 1 |
| other | AC * 28 WA * 31 |
ソースコード
import sys
input = sys.stdin.readline
N=int(input())
A=list(map(int,input().split()))
B=list(map(int,input().split()))
for i in range(N):
A[i]-=1
B[i]-=1
B_INV=[-1]*N
for i in range(N):
B_INV[B[i]]=i
ANS=[A[:]]
for tt in range(N-1):
X=[-1]*N
LIST=[]
for i in range(N):
k=B_INV[A[i]]
LIST.append((abs(i-k),i,A[i]))
#print(LIST)
LIST.sort(reverse=True)
for c,ind,a in LIST:
if c==0:
continue
k=B_INV[a]
if k>ind:
if X[ind]==-1 and X[ind+1]==-1:
X[ind]=A[ind+1]
X[ind+1]=A[ind]
else:
if X[ind]==-1 and X[ind-1]==-1:
X[ind]=A[ind-1]
X[ind-1]=A[ind]
for j in range(N):
if X[j]==-1:
X[j]=A[j]
A=X[:]
ANS.append(A)
ANS.append(B[:])
for i in range(len(ANS)):
X=ANS[i]
Y=[j+1 for j in X]
print(*Y)
titia