結果
問題 | No.429 CupShuffle |
ユーザー | kurenai3110 |
提出日時 | 2016-10-02 23:43:45 |
言語 | C++11 (gcc 13.3.0) |
結果 |
AC
|
実行時間 | 84 ms / 2,000 ms |
コード長 | 798 bytes |
コンパイル時間 | 678 ms |
コンパイル使用メモリ | 69,456 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-11-21 14:55:06 |
合計ジャッジ時間 | 1,860 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 16 |
ソースコード
#include <iostream> #include <string> #include <iomanip> #include <vector> using namespace std; int main() { int n, k, x; cin >> n >> k >> x; vector<int>a(k), b(k); int question=x-1; for (int i = 0; i < k; i++) { if (i == x - 1) { char ques; cin >> ques >> ques; continue; } cin >> a[i] >> b[i]; } vector<int>goal(n); for (int i = 0; i < n; i++)cin >> goal[i]; vector<int>prev; for (int i = 1; i <= n; i++)prev.push_back(i); for (int i = 0; i < question; i++) { swap(prev[a[i] - 1], prev[b[i] - 1]); } for (int i = k - 1; i > question; i--) { swap(goal[a[i] - 1], goal[b[i] - 1]); } vector<int>ans; for (int i = 0; i < n; i++) { if (prev[i] != goal[i])ans.push_back(i); } if (ans[0] > ans[1])swap(ans[0], ans[1]); cout << ans[0]+1 <<" "<< ans[1]+1 << endl; }