#include<bits/stdc++.h> usingnamespace std; #define ll long long typedef pair<int, int> pii; constint maxn = 2e5 + 10; int n, m; vector<int>G[maxn]; vector<pii>edges; int id[maxn], dfn[maxn]; queue<int>q; voidKahn(){ int cnt = 0; while (!q.empty()) { int u = q.front(); q.pop(); dfn[u] = cnt++; for (int v : G[u]) { --id[v]; if (!id[v])q.push(v); } } } intmain(){ scanf("%d%d", &n, &m); for (int i = 0; i < m; i++) { int u, v; scanf("%d%d", &u, &v); G[u].push_back(v); id[v]++; edges.push_back(pii(u, v)); } for (int i = 1; i <= n; i++) { if (!id[i])q.push(i); } Kahn(); int blo1 = ceil(n / 42.0), blo2 = ceil(blo1 / 42.0); for (pii e : edges) { int u = e.first, v = e.second; if (dfn[u] / blo1 != dfn[v] / blo1)puts("R"); elseif ((dfn[u] % blo1) / blo2 != (dfn[v] % blo1) / blo2)puts("G"); elseputs("B"); } return0; }