#include #include using namespace std; int main(){ int n, k; cin >> n >> k; int v[n]; for(int i = 0; i < n; i++) v[i] = i+1; int x, y; for(int i = 0; i < k; i++){ cin >> x >> y; swap(v[--x], v[--y]); } int a[n]; for(int i = 0; i < n; i++) cin >> a[i]; vector> ans; for(int i = 0; i < n; i++){ if(v[i] == a[i]) continue; int j; for(j = i+1; j < n; j++) if(a[i] == v[j]) break; while(v[i] != a[i]){ ans.push_back({j, j+1}); swap(v[j-1], v[j]); j--; } } cout << ans.size() << endl; for(pair p : ans) cout << p.first << " " << p.second << endl; return 0; }