#include <iostream>
#include <string>
#include <vector>
using namespace std;
int main() {
ios_base::sync_with_stdio(false);
cin.tie(NULL);
int t;
cin >> t;
vector<string> wyniki;
for (int i = 0; i < t; ++i) {
int n;
cin >> n;
vector<int> zabawki(n);
int najwiekszy = 0;
int NajMiejsce;
int suma = 0;
for (int d = 0; d < n; ++d) {
cin >> zabawki[d];
suma += zabawki[d];
if (najwiekszy < zabawki[d]) {
NajMiejsce = d;
najwiekszy = zabawki[d];
}
}
if (n == 1) {
if (suma == 1) {
wyniki.push_back("TAK");
} else {
wyniki.push_back("NIE");
}
} else {
int current_pos = NajMiejsce;
bool prawo = false;
while (suma > 0) {
if (current_pos == 0) {
prawo = false;
}
if (current_pos == n) {
prawo = true;
}
if (prawo) {
if (zabawki[current_pos] == 0) {
break;
}
zabawki[current_pos]--;
suma--;
if (zabawki[current_pos + 1] > 0) {
current_pos++;
} else {
prawo = false;
current_pos--;
}
} else {
if (zabawki[current_pos] == 0) {
break;
}
zabawki[current_pos]--;
suma--;
if (zabawki[current_pos - 1] > 0) {
current_pos--;
} else {
prawo = true;
current_pos++;
}
}
}
if (suma > 0) {
wyniki.push_back("NIE");
} else {
wyniki.push_back("TAK");
}
}
}
for (auto i : wyniki) {
cout << i << "\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 | #include <iostream> #include <string> #include <vector> using namespace std; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); int t; cin >> t; vector<string> wyniki; for (int i = 0; i < t; ++i) { int n; cin >> n; vector<int> zabawki(n); int najwiekszy = 0; int NajMiejsce; int suma = 0; for (int d = 0; d < n; ++d) { cin >> zabawki[d]; suma += zabawki[d]; if (najwiekszy < zabawki[d]) { NajMiejsce = d; najwiekszy = zabawki[d]; } } if (n == 1) { if (suma == 1) { wyniki.push_back("TAK"); } else { wyniki.push_back("NIE"); } } else { int current_pos = NajMiejsce; bool prawo = false; while (suma > 0) { if (current_pos == 0) { prawo = false; } if (current_pos == n) { prawo = true; } if (prawo) { if (zabawki[current_pos] == 0) { break; } zabawki[current_pos]--; suma--; if (zabawki[current_pos + 1] > 0) { current_pos++; } else { prawo = false; current_pos--; } } else { if (zabawki[current_pos] == 0) { break; } zabawki[current_pos]--; suma--; if (zabawki[current_pos - 1] > 0) { current_pos--; } else { prawo = true; current_pos++; } } } if (suma > 0) { wyniki.push_back("NIE"); } else { wyniki.push_back("TAK"); } } } for (auto i : wyniki) { cout << i << "\n"; } return 0; } |
English