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
#include <iostream>

char a[300001], b[300001];
int uzyte[2][26];

int main()
{
    std::ios_base::sync_with_stdio(false);
    std::cin.tie(nullptr);

    int n;
    std::cin >> n >> a >> b;

    if(n == 1)
        std::cout << (a[0] == b[0] ? "TAK\n" : "NIE\n");
    else if(n == 2)
        std::cout << (a[0] == b[0] && a[1] == b[1] ? "TAK\n" : "NIE\n");
    else
    {
        for(int i = 0; i < n; i+=2)
            ++uzyte[0][a[i]-'a'], --uzyte[0][b[i]-'a'];
        for(int i = 1; i < n; i+=2)
            ++uzyte[1][a[i]-'a'], --uzyte[1][b[i]-'a'];
        bool wynik = true;
        for(int i = 0; i < 26 && wynik; ++i)
            if(uzyte[0][i] || uzyte[1][i])
                wynik = false;
        std::cout << (wynik ? "TAK\n" : "NIE\n");
    }

    return 0;
}