結果
| 問題 | No.429 CupShuffle |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2016-10-02 22:53:11 |
| 言語 | PyPy2 (7.3.20) |
| 結果 |
AC
|
| 実行時間 | 205 ms / 2,000 ms |
| コード長 | 1,076 bytes |
| 記録 | |
| コンパイル時間 | 191 ms |
| コンパイル使用メモリ | 77,344 KB |
| 最終ジャッジ日時 | 2025-12-03 21:44:06 |
|
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 16 |
ソースコード
#!/usr/bin/env python
#coding:utf8
def read():
nNum, nSwap, hiddenSwap = map(int, raw_input().split())
swapList = []
for i in range(nSwap):
if i + 1 != hiddenSwap:
swapList.append(map(int, raw_input().split()))
else:
raw_input()
swapList.append([-1, -1])
lastState = map(int, raw_input().split())
return nNum, swapList, hiddenSwap, lastState
def work((nNum, swapList, hiddenSwap, lastState)):
state1 = [i + 1 for i in range(nNum)]
for (idx, (s, t)) in enumerate(swapList):
if idx + 1 == hiddenSwap:
break
state1[s - 1], state1[t - 1] = state1[t - 1], state1[s - 1]
state2 = lastState
for idx in range(len(swapList))[::-1]:
if idx + 1 == hiddenSwap:
break
s, t = swapList[idx]
state2[s - 1], state2[t - 1] = state2[t - 1], state2[s - 1]
ans = []
for i in range(nNum):
if state1[i] != state2[i]:
ans.append(i + 1)
print ans[0], ans[1]
if __name__ == "__main__":
work(read())