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;

int main() {
int n; cin>>n;
string z1, z2; cin>>z1>>z2;
int alf[26]={};
for(int i=0; i<n; ++i){ 
    char c1=z1[i];
    ++alf[(int)c1-97];
    char c2=z2[i];
    --alf[(int)c2-97];
} bool czy_mozna=1;
for(int i=0; i<26; ++i){
    if(alf[i]){
        czy_mozna=0;
        break;
    }
}
int np_p1[26]={};
int np_p2[26]={};
if(czy_mozna){
    for(int i=0; i<n; ++i){
        if(i%2) np_p1[(int)z1[i]-97]+=1;
        if(i%2) np_p2[(int)z2[i]-97]+=1;
    }
    for(int i=0; i<26; ++i){
        if(np_p1[i]!=np_p2[i]){
            czy_mozna=0;
            break;
        }
    }
    if(czy_mozna) cout<<"TAK\n";
    else cout<<"NIE\n";
}
else cout<<"NIE\n";

    return 0;
}