大搬运术:http://blog.csdn.net/PoPoQQQ/article/details/46549901
#include<cstdio>
#include<cstdlib>
#include<algorithm>
using namespace std;
inline char nc()
{
static char buf[100000],*p1=buf,*p2=buf;
if (p1==p2) { p2=(p1=buf)+fread(buf,1,100000,stdin); if (p1==p2) return EOF; }
return *p1++;
}
inline void read(int &x)
{
char c=nc(),b=1;
for (;!(c>='0' && c<='9');c=nc()) if (c=='-') b=-1;
for (x=0;c>='0' && c<='9';x=x*10+c-'0',c=nc()); x*=b;
}
int n,p,q;
int Gcd(int a,int b){
if (a<b) return Gcd(b,a);
return b?Gcd(b,a%b):a;
}
bool Jud(int n,int p,int q)
{
return n%p<q && n%p%(p-q)==0;
}
int main()
{
freopen("t.in","r",stdin);
freopen("t.out","w",stdout);
int Q;
read(Q);
while (Q--)
{
read(p); read(q); read(n);
int g=Gcd(p,q);
if(n%g) { printf("R\n"); continue; }
p/=g; q/=g; n/=g;
if(p==q)
{
printf("E\n");
}
else if(p>q)
{
if(n<p)
printf("P\n");
else
printf("%s\n",Jud(n,p,q)?"E":"P");
}
else if(n<p)
{
if(n+p<q)
printf("E\n");
else
printf("%s\n",Jud(n+p,q,p)?"P":"E");
}
else
{
printf("E\n");
}
}
return 0;
}