結果

問題 No.241 出席番号(1)
コンテスト
ユーザー niyarin
提出日時 2016-08-23 22:09:17
言語 PyPy2
(7.3.15)
結果
AC  
実行時間 77 ms / 2,000 ms
コード長 592 bytes
コンパイル時間 123 ms
コンパイル使用メモリ 77,700 KB
最終ジャッジ日時 2025-12-03 21:17:08
ジャッジサーバーID
(参考情報)
judge3 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 29
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

N = input()
A = [input() for i in range(N)]

nyrn = [ i for i in range(N)]
iyada = []
imp = False
for i in range(N):
    if A[i] == nyrn[i]:
        iyada.append(i)
while iyada:
    if (len(iyada) > 2):
        a = iyada.pop()
        b = iyada.pop()
        nyrn[a],nyrn[b] = nyrn[b],nyrn[a]
    else:
        a = iyada.pop()
        b = -1
        for i in range(N):
            if nyrn[a] != A[i]:
                b = i
        if b == -1:
            imp = True
            break
        nyrn[a],nyrn[b] = nyrn[b],nyrn[a]
if not imp:
    for n in nyrn:
        print n
else:
    print -1
0