#include <iostream>
using namespace std;
int doTC() {
int n, m;
cin >> n >> m;
bool * isWinningNode = new bool[n];
int * countDominatorsNode = new int[n];
for (int i = 0 ; i < n ; i++) {
isWinningNode[i] = false;
countDominatorsNode[i] = 0;
}
for (int i = 0; i<m;++i) {
int tmp1, tmp2;
char c;
cin >> tmp1 >> c >> tmp2;
--tmp1; --tmp2;
if (c == '>') {
countDominatorsNode[tmp2]++;
} else {
isWinningNode[tmp2] = true;
}
}
bool isDominated = false;
bool isDraw = false;
for (int i = 0 ; i < n ; i++) {
if (countDominatorsNode[i]==n) {
isDominated = true;
i = n;
}
if (isWinningNode[i] == false) {
isDraw = true;
}
}
delete [] isWinningNode;
delete [] countDominatorsNode;
if (isDominated) {
return 0;
}
if (isDraw) {
return 1;
}
return 2;
}
int main () {
int tc;
cin >> tc;
while (tc--) {
int a = doTC();
switch (a) {
case 0:
cout << "WYGRANA\n";
break;
case 1:
cout << "REMIS\n";
break;
case 2:
cout << "PRZEGRANA\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 | #include <iostream> using namespace std; int doTC() { int n, m; cin >> n >> m; bool * isWinningNode = new bool[n]; int * countDominatorsNode = new int[n]; for (int i = 0 ; i < n ; i++) { isWinningNode[i] = false; countDominatorsNode[i] = 0; } for (int i = 0; i<m;++i) { int tmp1, tmp2; char c; cin >> tmp1 >> c >> tmp2; --tmp1; --tmp2; if (c == '>') { countDominatorsNode[tmp2]++; } else { isWinningNode[tmp2] = true; } } bool isDominated = false; bool isDraw = false; for (int i = 0 ; i < n ; i++) { if (countDominatorsNode[i]==n) { isDominated = true; i = n; } if (isWinningNode[i] == false) { isDraw = true; } } delete [] isWinningNode; delete [] countDominatorsNode; if (isDominated) { return 0; } if (isDraw) { return 1; } return 2; } int main () { int tc; cin >> tc; while (tc--) { int a = doTC(); switch (a) { case 0: cout << "WYGRANA\n"; break; case 1: cout << "REMIS\n"; break; case 2: cout << "PRZEGRANA\n"; } } return 0; } |
English