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
#define _CRT_SECURE_NO_WARNINGS
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<vector>
#include<stack>
#include<queue>
#include<set>
#include<map>
#include<cstring>
#include<string>
#include<iomanip>
using namespace std;
int testCases, n, m, a, b, IleNiezerowychStopniW_A, IleNiezerowychStopniW_B, StopienWejsciowyB[100004];
bool pom, CzyWychodziCosZ_A[100004], CzyCosWychodziZ_B[100004];
char znak;
int main() 
{
	scanf("%d", &testCases);
	while (testCases--)
	{
		scanf("%d %d", &n, &m);
		for (int i = 1; i <= m; i++)
		{
			scanf("%d %c %d", &a, &znak, &b);
			if (znak == '>') { if (CzyWychodziCosZ_A[a] == false) { CzyWychodziCosZ_A[a] = true; IleNiezerowychStopniW_A++; } StopienWejsciowyB[b]++; if (StopienWejsciowyB[b] >= n) pom = true; }
			else if (CzyCosWychodziZ_B[b] == false) { CzyCosWychodziZ_B[b] = true; IleNiezerowychStopniW_B++; }
		}
		if (IleNiezerowychStopniW_A == n && pom != 0) cout << "WYGRANA\n"; else if (IleNiezerowychStopniW_B == n) cout << "PRZEGRANA\n"; else cout << "REMIS\n";
		for (int i = 1; i <= n; i++) CzyWychodziCosZ_A[i] = CzyCosWychodziZ_B[i] = StopienWejsciowyB[i] = 0;
		IleNiezerowychStopniW_A = IleNiezerowychStopniW_B = pom = 0;
	}

	getchar();
	getchar();
	return 0;
}