#include <bits/stdc++.h> using namespace std; using ll = long long; using ull = unsigned long long; using ld = long double; using pii = pair<int,int>; using pll = pair<ll,ll>; using vi = vector<int>; using vb = vector<bool>; using vc = vector<char>; using vvc = vector<vc>; using vvi = vector<vi>; using vvb = vector<vb>; using vpii = vector<pii>; using vpll = vector<pll>; using vll = vector<ll>; using vvll = vector<vll>; using vull = vector<ull>; #define f first #define s second #define pb emplace_back #define rep(i, begin, end) for(auto i = (begin); i <= (end); ++i) #define repr(i, begin, end) for(auto i = (begin); i >= (end); --i) #define bend(X) X.begin(), X.end() #ifdef LOCAL #define nl << endl #define deb(x) cout << #x << " = " << x << endl #define say(x) cout << x << endl void print() { cout << endl; } #else #define nl << '\n' #define deb(x) #define say(x) void print() { cout << '\n'; } #endif constexpr int INF = 1e9+1e7; constexpr ll INFl = INF; constexpr ll INFll = 1e18+1e16; template <typename T, typename... Args> void print(T x, Args... args) { cout << x << ' '; print(args...); } template <typename T1, typename T2> ostream& operator<<(ostream& os, pair<T1,T2> x) { os << '(' << x.f << ' ' << x.s << ')'; return os; } template <typename T1, typename T2> istream& operator>>(istream& is, pair<T1,T2>& x) { is >> x.f >> x.s; return is; } template <typename T> istream& operator>>(istream& is, vector<T>& x) { for(T& i : x) is >> i; return is; } template <typename T> ostream& operator<<(ostream& os, vector<T>& x) { for(const T& i : x) os << i << ' '; return os; } template <typename T> ostream& operator<<(ostream& os, set<T>& x) { for(const T& i : x) os << i << ' '; return os; } template <typename T1, typename T2> ostream& operator<<(ostream& os, map<T1, T2>& x) { for(const auto& i : x) os << "(" << i.first << " : " << i.second << ") "; return os; } template <typename T1, typename T2> pair<T1,T2> operator+(const pair<T1,T2>& A, const pair<T1,T2>& B) { return {A.f+B.f, A.s+B.s}; } template <typename T1, typename T2> pair<T1,T2> operator-(const pair<T1,T2>& A, const pair<T1,T2>& B) { return {A.f-B.f, A.s-B.s}; } template <typename T1, typename T2> pair<T1,T2> operator-(const pair<T1,T2>& A) { return {-A.f, -A.s}; } template <typename T1, typename T2> bool maxe(T1& A, const T2& B) { return A<B ? A=B,true : false; } template <typename T1, typename T2> bool mine(T1& A, const T2& B) { return B<A ? A=B,true : false; } // ---------------------------------------------------------------- // ---------------------------------------------------------------- int n; int cnt[2][2][30]; ll solve() { rep(l, 0, 1) rep(i, 0, 28) if(cnt[0][l][i] != cnt[1][l][i]) return -'n'; return -'t'; } void in() { cin >> n; rep(k, 0, 1) rep(i, 1, n) { char c; cin >> c; cnt[k][i%2][c-'a']++; } } int main() { ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0); int noOfTests = 1; //cin >> noOfTests; while(noOfTests --> 0) { in(); ll result = solve(); if (result == ll(-'t')) cout << "TAK\n"; else if(result == ll(-'n')) cout << "NIE\n"; else if(result == ll(-'y')) cout << "YES\n"; else if(result == ll(-'o')) cout << "NO\n"; else if(result == ll(-'e')) cout << "Popsute\n"; else if(result != -INF) cout << result << '\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 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 | #include <bits/stdc++.h> using namespace std; using ll = long long; using ull = unsigned long long; using ld = long double; using pii = pair<int,int>; using pll = pair<ll,ll>; using vi = vector<int>; using vb = vector<bool>; using vc = vector<char>; using vvc = vector<vc>; using vvi = vector<vi>; using vvb = vector<vb>; using vpii = vector<pii>; using vpll = vector<pll>; using vll = vector<ll>; using vvll = vector<vll>; using vull = vector<ull>; #define f first #define s second #define pb emplace_back #define rep(i, begin, end) for(auto i = (begin); i <= (end); ++i) #define repr(i, begin, end) for(auto i = (begin); i >= (end); --i) #define bend(X) X.begin(), X.end() #ifdef LOCAL #define nl << endl #define deb(x) cout << #x << " = " << x << endl #define say(x) cout << x << endl void print() { cout << endl; } #else #define nl << '\n' #define deb(x) #define say(x) void print() { cout << '\n'; } #endif constexpr int INF = 1e9+1e7; constexpr ll INFl = INF; constexpr ll INFll = 1e18+1e16; template <typename T, typename... Args> void print(T x, Args... args) { cout << x << ' '; print(args...); } template <typename T1, typename T2> ostream& operator<<(ostream& os, pair<T1,T2> x) { os << '(' << x.f << ' ' << x.s << ')'; return os; } template <typename T1, typename T2> istream& operator>>(istream& is, pair<T1,T2>& x) { is >> x.f >> x.s; return is; } template <typename T> istream& operator>>(istream& is, vector<T>& x) { for(T& i : x) is >> i; return is; } template <typename T> ostream& operator<<(ostream& os, vector<T>& x) { for(const T& i : x) os << i << ' '; return os; } template <typename T> ostream& operator<<(ostream& os, set<T>& x) { for(const T& i : x) os << i << ' '; return os; } template <typename T1, typename T2> ostream& operator<<(ostream& os, map<T1, T2>& x) { for(const auto& i : x) os << "(" << i.first << " : " << i.second << ") "; return os; } template <typename T1, typename T2> pair<T1,T2> operator+(const pair<T1,T2>& A, const pair<T1,T2>& B) { return {A.f+B.f, A.s+B.s}; } template <typename T1, typename T2> pair<T1,T2> operator-(const pair<T1,T2>& A, const pair<T1,T2>& B) { return {A.f-B.f, A.s-B.s}; } template <typename T1, typename T2> pair<T1,T2> operator-(const pair<T1,T2>& A) { return {-A.f, -A.s}; } template <typename T1, typename T2> bool maxe(T1& A, const T2& B) { return A<B ? A=B,true : false; } template <typename T1, typename T2> bool mine(T1& A, const T2& B) { return B<A ? A=B,true : false; } // ---------------------------------------------------------------- // ---------------------------------------------------------------- int n; int cnt[2][2][30]; ll solve() { rep(l, 0, 1) rep(i, 0, 28) if(cnt[0][l][i] != cnt[1][l][i]) return -'n'; return -'t'; } void in() { cin >> n; rep(k, 0, 1) rep(i, 1, n) { char c; cin >> c; cnt[k][i%2][c-'a']++; } } int main() { ios_base::sync_with_stdio(false); cin.tie(0); cout.tie(0); int noOfTests = 1; //cin >> noOfTests; while(noOfTests --> 0) { in(); ll result = solve(); if (result == ll(-'t')) cout << "TAK\n"; else if(result == ll(-'n')) cout << "NIE\n"; else if(result == ll(-'y')) cout << "YES\n"; else if(result == ll(-'o')) cout << "NO\n"; else if(result == ll(-'e')) cout << "Popsute\n"; else if(result != -INF) cout << result << '\n'; } return 0; } |