#include <bits/stdc++.h>
using namespace std;
typedef long long lld;
typedef double lf;
typedef long double llf;
typedef pair<int,int> pii;
typedef pair<lld,lld> pll;
#define For(i,s,a) for(int i = (int)s; i < (int)a; ++i)
#define rpt(s, it) for(auto it = s.begin(); it != s.end(); ++it)
#define brpt(s, it) for(auto it = s.rend(); it != s.rbegin(); --it)
#define sz size()
#define pb push_back
#define eb emplace_back
#define ff first
#define dd second
#define mp make_pair
#define all(x) (x).begin (x).end()
template<typename Ta, typename Tb>
ostream & operator <<(ostream & os, pair<Ta, Tb> x){
return os << x.ff << " " << x.dd;
}
char s[3][300001];
char z[3][300001];
int32_t main(void){
int a;
scanf("%d", &a);
scanf("%s", s[0]);
scanf("%s", z[0]);
for(int i = 0; i < a; i += 2){
s[2][i / 2] = s[0][i];
z[2][i / 2] = z[0][i];
}
for(int i = 1; i < a; i += 2){
s[1][i / 2] = s[0][i];
z[1][i / 2] = z[0][i];
}
int a1 = strlen(s[1]);
int a2 = strlen(s[2]);
sort(s[1], s[1] + a1);
sort(z[1], z[1] + a1);
sort(s[2], s[2] + a2);
sort(z[2], z[2] + a2);
puts(memcmp(s[1], z[1], a1) || memcmp(s[2], z[2], a2) ? "NIE" : "TAK");
}
/*
7
abcdefg
edgbcfa
5
abcde
fghhh
*/
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 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 | #include <bits/stdc++.h> using namespace std; typedef long long lld; typedef double lf; typedef long double llf; typedef pair<int,int> pii; typedef pair<lld,lld> pll; #define For(i,s,a) for(int i = (int)s; i < (int)a; ++i) #define rpt(s, it) for(auto it = s.begin(); it != s.end(); ++it) #define brpt(s, it) for(auto it = s.rend(); it != s.rbegin(); --it) #define sz size() #define pb push_back #define eb emplace_back #define ff first #define dd second #define mp make_pair #define all(x) (x).begin (x).end() template<typename Ta, typename Tb> ostream & operator <<(ostream & os, pair<Ta, Tb> x){ return os << x.ff << " " << x.dd; } char s[3][300001]; char z[3][300001]; int32_t main(void){ int a; scanf("%d", &a); scanf("%s", s[0]); scanf("%s", z[0]); for(int i = 0; i < a; i += 2){ s[2][i / 2] = s[0][i]; z[2][i / 2] = z[0][i]; } for(int i = 1; i < a; i += 2){ s[1][i / 2] = s[0][i]; z[1][i / 2] = z[0][i]; } int a1 = strlen(s[1]); int a2 = strlen(s[2]); sort(s[1], s[1] + a1); sort(z[1], z[1] + a1); sort(s[2], s[2] + a2); sort(z[2], z[2] + a2); puts(memcmp(s[1], z[1], a1) || memcmp(s[2], z[2], a2) ? "NIE" : "TAK"); } /* 7 abcdefg edgbcfa 5 abcde fghhh */ |
English