#include <iostream>
#include <algorithm>
using namespace std;
bool check(int n, string &a, string &b) {
if(n<3) return a == b;
string odd_a="", even_a="", odd_b="", even_b="";
for(int i=0; i<n; ++i)
if(i&1) {
even_a+=a[i];
even_b+=b[i];
} else {
odd_a+=a[i];
odd_b+=b[i];
}
sort(even_a.begin(), even_a.end());
sort(even_b.begin(), even_b.end());
sort(odd_a.begin(), odd_a.end());
sort(odd_b.begin(), odd_b.end());
return (even_a == even_b) && (odd_a == odd_b);
}
int main() {
int n;
string a, b;
cin >> n;
cin >> a >> b;
cout << (check(n, a, b) ? "TAK" : "NIE") << endl;
return 0;
}
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 | #include <iostream> #include <algorithm> using namespace std; bool check(int n, string &a, string &b) { if(n<3) return a == b; string odd_a="", even_a="", odd_b="", even_b=""; for(int i=0; i<n; ++i) if(i&1) { even_a+=a[i]; even_b+=b[i]; } else { odd_a+=a[i]; odd_b+=b[i]; } sort(even_a.begin(), even_a.end()); sort(even_b.begin(), even_b.end()); sort(odd_a.begin(), odd_a.end()); sort(odd_b.begin(), odd_b.end()); return (even_a == even_b) && (odd_a == odd_b); } int main() { int n; string a, b; cin >> n; cin >> a >> b; cout << (check(n, a, b) ? "TAK" : "NIE") << endl; return 0; } |
English