#include #include using namespace std; const int MAX_N = 100010; int c[MAX_N]; int r1[MAX_N], r2[MAX_N]; int main() { int n, k, x; cin >> n >> k >> x; for (int i = 0; i < n; i++) { r1[i] = i; } for (int i = 0; i < k; i++) { string s1, s2; cin >> s1 >> s2; if (i == x - 1) { for (int j = 0; j < n; j++) { r2[j] = r1[j]; } continue; } int a = stoi(s1), b = stoi(s2); swap(r1[a - 1], r1[b - 1]); } for (int i = 0; i < n; i++) { cin >> c[i]; c[i]--; } int w1, w2; for (int i = 0; i < n; i++) { if (r1[i] != c[i]) { w1 = min(r2[r1[i]], r2[c[i]]) + 1; w2 = max(r2[r1[i]], r2[c[i]]) + 1; cout << w1 << " " << w2 << endl; break; } } return 0; }