#include <cstdio> #include <cassert> #include <algorithm> using namespace std; int n; const int max_size = 300005; const int zab_types = 26; char a[max_size]; char b[max_size]; typedef struct { int num_even; int num_odd; } zab; zab zaba[zab_types]; zab zabb[zab_types]; void calc_zab(char *t, zab *z) { for(int i = 0; i < n; ++i) { if (i%2 == 0) { z[t[i] - 'a'].num_even++; } else { z[t[i] - 'a'].num_odd++; } } } void print_zab(zab *z) { for(int i = 0; i < zab_types; ++i) { printf("%c %d %d - ", i+'a', z[i].num_even, z[i].num_odd); } printf("\n"); } bool compare_zab(zab *za, zab *zb) { for(int i = 0; i < zab_types; ++i) { if (za[i].num_odd != zb[i].num_odd) { return false; } if (za[i].num_even != zb[i].num_even) { return false; } } return true; } int main() { scanf("%d\n", &n); scanf("%s\n", a); scanf("%s\n", b); calc_zab(a, zaba); calc_zab(b, zabb); //print_zab(zaba); //print_zab(zabb); if (compare_zab(zaba, zabb)) { printf("TAK\n"); } else { printf("NIE\n"); } 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 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 | #include <cstdio> #include <cassert> #include <algorithm> using namespace std; int n; const int max_size = 300005; const int zab_types = 26; char a[max_size]; char b[max_size]; typedef struct { int num_even; int num_odd; } zab; zab zaba[zab_types]; zab zabb[zab_types]; void calc_zab(char *t, zab *z) { for(int i = 0; i < n; ++i) { if (i%2 == 0) { z[t[i] - 'a'].num_even++; } else { z[t[i] - 'a'].num_odd++; } } } void print_zab(zab *z) { for(int i = 0; i < zab_types; ++i) { printf("%c %d %d - ", i+'a', z[i].num_even, z[i].num_odd); } printf("\n"); } bool compare_zab(zab *za, zab *zb) { for(int i = 0; i < zab_types; ++i) { if (za[i].num_odd != zb[i].num_odd) { return false; } if (za[i].num_even != zb[i].num_even) { return false; } } return true; } int main() { scanf("%d\n", &n); scanf("%s\n", a); scanf("%s\n", b); calc_zab(a, zaba); calc_zab(b, zabb); //print_zab(zaba); //print_zab(zabb); if (compare_zab(zaba, zabb)) { printf("TAK\n"); } else { printf("NIE\n"); } return 0; } |