#include <bits/stdc++.h> using namespace std; const int N = 300007; char a[N], b[N]; int x[30], y[30]; deque<int> p[30]; int main(){ ios_base::sync_with_stdio(false); cin.tie(0); int n; cin >> n; for (int i = 0; i < n; i++) { cin >> a[i]; x[a[i] - 'a']++; } for (int i = 0; i < n; i++){ cin >> b[i]; y[b[i] - 'a']++; p[b[i] - 'a'].push_back(i); } for (int i = 0; i < n; i++){ if (x[i] != y[i]){ cout << "NIE\n"; return 0; } } for (int i = 0; i < n; i++){ if (((p[b[i] - 'a'].front() - i) % 2)){ cout << "NIE\n"; return 0; } p[b[i] - 'a'].pop_front(); } cout << "TAK\n"; }
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 | #include <bits/stdc++.h> using namespace std; const int N = 300007; char a[N], b[N]; int x[30], y[30]; deque<int> p[30]; int main(){ ios_base::sync_with_stdio(false); cin.tie(0); int n; cin >> n; for (int i = 0; i < n; i++) { cin >> a[i]; x[a[i] - 'a']++; } for (int i = 0; i < n; i++){ cin >> b[i]; y[b[i] - 'a']++; p[b[i] - 'a'].push_back(i); } for (int i = 0; i < n; i++){ if (x[i] != y[i]){ cout << "NIE\n"; return 0; } } for (int i = 0; i < n; i++){ if (((p[b[i] - 'a'].front() - i) % 2)){ cout << "NIE\n"; return 0; } p[b[i] - 'a'].pop_front(); } cout << "TAK\n"; } |