結果
| 問題 |
No.429 CupShuffle
|
| コンテスト | |
| ユーザー |
piniky
|
| 提出日時 | 2016-10-08 00:06:49 |
| 言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
AC
|
| 実行時間 | 30 ms / 2,000 ms |
| コード長 | 1,033 bytes |
| コンパイル時間 | 1,887 ms |
| コンパイル使用メモリ | 172,568 KB |
| 実行使用メモリ | 5,248 KB |
| 最終ジャッジ日時 | 2024-11-21 20:00:12 |
| 合計ジャッジ時間 | 2,501 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
| 外部呼び出し有り |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 16 |
ソースコード
#include "bits/stdc++.h"
#define debug(x) cout<<#x<<": "<<x<<endl
#define rep(i,n) for (int i=0;i<(n);i++)
#define FOR(i,a,b) for (int i=(a);i<=(b);i++)
#define all(a) (a).begin(),(a).end()
using namespace std;
typedef vector<int> VI;
typedef vector<vector<int>> VVI;
typedef long long ll;
void solve() {
#ifdef _WIN32
istream &cin = ifstream("input.txt");
#endif
int n, k, x;
cin >> n >> k >> x;
VI v(n), v2(n);
vector<pair<int, int>> sw(k - x);
rep(i, n) v[i] = i;
rep(i, x - 1) {
int a, b;
cin >> a >> b;
a--; b--;
swap(v[a], v[b]);
}
char tmp;
cin >> tmp >> tmp;
rep(i, k - x) {
int a, b;
cin >> a >> b;
a--; b--;
sw[i] = {a, b};
}
rep(i, n) {
cin >> v2[i];
v2[i]--;
}
int len = sw.size();
rep(i, k - x) {
swap(v2[sw[len - i - 1].first], v2[sw[len - i - 1].second]);
}
VI ans(0);
rep(i, n) if (v[i] != v2[i]) ans.push_back(i);
cout << ans[0] + 1 << " " << ans[1] + 1 << endl;
}
int main() {
cin.tie(0);
ios::sync_with_stdio(false);
solve();
system("PAUSE");
return 0;
}
piniky