LPL春季赛决赛就要打响了,EDG和RNG将争夺春季赛冠军。
小M十分喜爱观看LPL的比赛,经过他的长期观察,
在比赛过程中一个人的作战能力跟他当前获取的金钱息息相关,
而整个队伍的作战能力跟每个人当前获取的金钱数有关。
小M设计了一个简单的算法:
求队伍里5个人金钱的最大公约数,如果最大公约数越大就代表队伍的作战能力更强
现在给出EDG和RNG开启一波团战时5个位置的金钱数,队伍战斗能力越强的队伍就会赢得这波团战
小M的算法中哪个队伍这波团战会赢?
Input
第一行为测试数据组数T(T <= 10000)
每组数据第一行为EDG五个位置的当前金钱数,用空格区分
每组数据第二行为RNG五个位置的当前金钱数,用空格区分
所有金钱数x(0< x <= 10000)
Output
如果EDG会赢,则输出“EDG!”
如果RNG会赢,则输出”RNG!“
如果两队相等,则输出“EDG and RNG!”
Sample Input
1
3 6 9 12 15
2 4 8 16 32
Sample Output
EDG!
#include <iostream>
#include <stdio.h>
using namespace std;
void find(int a[],int b[],int k[])
{
int i=0,max1=a[0],max2=a[2],n,m;
while(i<=4)
{
if(a[i]<=max1)
n=i;
if(b[i]<=max2)
m=i;
i++;
}
i=1;
while(i<=a[n])
{
if(a[0]%i==0&&a[1]%i==0&&a[2]%i==0&&a[3]%i==0&&a[4]%i==0)
k[0]=i;
if(b[0]%i==0&&b[1]%i==0&&b[2]%i==0&&b[3]%i==0&&b[4]%i==0)
k[1]=i;
i++;
}
}
int main()
{
int N,a[5],b[5],c[10001][2];
scanf("%d",&N);
int i=1,j;
while(i<=N)
{
j=0;
while(j<=4)
{
scanf("%d",&a[j]);
j++;
}
j=0;
while(j<=4)
{
scanf("%d",&b[j]);
j++;
}
find(a,b,c[i]);
i++;
}
i=1;
while(i<=N)
{
if(c[i][0]>c[i][1])
printf("EDG!\n");
else if(c[i][0]<c[i][1])
printf("RNG!\n");
else
printf("EDG and RNG!\n");
i++;
}
return 0;
}