#include<iostream> #include<map> using namespace std; int main() { int n; cin >> n; map<string, int> mapping; unsigned sum = 18; string s; mapping["1A"] = 1; mapping["1B"] = 1; mapping["1C"] = 1; mapping["2A"] = 1; mapping["2B"] = 1; mapping["2C"] = 1; mapping["3A"] = 1; mapping["3B"] = 1; mapping["3C"] = 1; mapping["4A"] = 1; mapping["4B"] = 1; mapping["4C"] = 1; mapping["5A"] = 2; mapping["5B"] = 2; mapping["5C"] = 2; while (n--) { cin >> s; auto &it = mapping[s]; if (it > 0) { it--; sum--; if (sum == 0) { break; } } } if (sum > 0) { cout << "NIE" << endl; } else { cout << "TAK" << endl; } return 0; } // from itertools import product // from sys import argv // tasks = [''.join(tu) for tu in product(list(map(str, range(1, 6))) + ['5'], 'ABC')] // // mapping = dict() // for i, t in enumerate(tasks): // if t not in mapping: // mapping[t] = i // // counts = [0 for _ in mapping] // for t in tasks: // counts[mapping[t]] += 1 // // s = '''\ // #include<iostream> // #include<map> // using namespace std; // // int main() { // int n; // cin >> n; // map<string, int> mapping; // unsigned sum = 18; // string s; // '''; // s += '\n'.join(f'mapping["{t}"] = {c};' for t, c in zip(tasks, counts)) // s += ''' // while (n--) { // cin >> s; // auto &it = mapping[s]; // if (it > 0) { // it--; // sum--; // if (sum == 0) { // break; // } // } // } // if (sum > 0) { // cout << "NIE" << endl; // } else { // cout << "TAK" << endl; // } // return 0; // } // // ''' // // with open(argv[0], 'r') as f: // s += '// '.join(f.readlines()) // // with open('test.cpp', 'w') as f: // f.write(s)
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 | #include<iostream> #include<map> using namespace std; int main() { int n; cin >> n; map<string, int> mapping; unsigned sum = 18; string s; mapping["1A"] = 1; mapping["1B"] = 1; mapping["1C"] = 1; mapping["2A"] = 1; mapping["2B"] = 1; mapping["2C"] = 1; mapping["3A"] = 1; mapping["3B"] = 1; mapping["3C"] = 1; mapping["4A"] = 1; mapping["4B"] = 1; mapping["4C"] = 1; mapping["5A"] = 2; mapping["5B"] = 2; mapping["5C"] = 2; while (n--) { cin >> s; auto &it = mapping[s]; if (it > 0) { it--; sum--; if (sum == 0) { break; } } } if (sum > 0) { cout << "NIE" << endl; } else { cout << "TAK" << endl; } return 0; } // from itertools import product // from sys import argv // tasks = [''.join(tu) for tu in product(list(map(str, range(1, 6))) + ['5'], 'ABC')] // // mapping = dict() // for i, t in enumerate(tasks): // if t not in mapping: // mapping[t] = i // // counts = [0 for _ in mapping] // for t in tasks: // counts[mapping[t]] += 1 // // s = '''\ // #include<iostream> // #include<map> // using namespace std; // // int main() { // int n; // cin >> n; // map<string, int> mapping; // unsigned sum = 18; // string s; // '''; // s += '\n'.join(f'mapping["{t}"] = {c};' for t, c in zip(tasks, counts)) // s += ''' // while (n--) { // cin >> s; // auto &it = mapping[s]; // if (it > 0) { // it--; // sum--; // if (sum == 0) { // break; // } // } // } // if (sum > 0) { // cout << "NIE" << endl; // } else { // cout << "TAK" << endl; // } // return 0; // } // // ''' // // with open(argv[0], 'r') as f: // s += '// '.join(f.readlines()) // // with open('test.cpp', 'w') as f: // f.write(s) |