你的乘车在这里
这是一个众所周知的事实,每个好彗星后面是一个不明飞行物。这些不明飞行物常常从地球上收集忠实的支持者。不幸的是,他们只有在每次旅行中有一群追随者的空间。然而,他们确实让团队提前知道,这将是一个聪明的计划为每个彗星挑选:他们选择一个彗星的名称,以及组的名称,可以用于确定是否一个特定的群体的转向(你认为彗星的名字?)。匹配方案的细节如下:你的工作是编写一个程序,它取一个组和彗星的名称,然后确定该组是否应该与该彗星后面的UFO。
组的名称和彗星的名称都按以下方式转换为数字:最终数字只是名称中所有字母的乘积,其中“A”为1,“Z”为26。例如,组“USACO”将是21 * 19 * 1 * 3 * 15 = 17955.如果组的数字mod 47与彗星的数字mod 47相同,则需要告诉组准备好!(记住,“mod b”是除以b后剩余的余数; 34 mod 10是4)
写一个程序,读入彗星的名称和组的名称,并计算出是否根据上述方案的名称是一个匹配,打印“GO”,如果他们匹配,“停留”,如果不是。组和彗星的名称将是大写字母的字符串,不包含空格或标点符号,最多6个字符。
例子:
输入 | 输出 |
COMETQ HVNGAT |
走 |
ABSTAR USACO |
留 |
程序名:骑
这意味着,你在你的头填充:PROG:乘坐
警告:您必须在此字段或错误的测试数据(或不测试数据)'骑'将被使用。
输入格式
第1行: | 长度为1..6的大写字符串,是彗星的名称。 |
第2行: | 长度为1..6的大写字符串,是组的名称。 |
注:输入文件具有在每行的端部的换行,但没有一个“返回”。有时,程序员编写的Windows范例“return”后跟“newline”; 不要这样做!使用简单的输入例程,如“readln”(对于Pascal)和C / C ++,“fscanf”和“fid >> string”。
注2:由于多余的人物,一定要留下足够的空间用于“换行”(也记载为' n')和串字符(' 0'),如果你的语言使用它(结束C和C ++ do)。这意味着你需要八个字符的房间,而不是六个。
SAMPLE INPUT(file ride.in)
COMETQ HVNGAT
输出格式
包含单词“GO”或单词“STAY”的单行。SAMPLE OUTPUT(file ride.out)
走
输出说明
将字母转换为数字:C | O | M | E | T | Q | |
3 | 15 | 13 | 5 | 20 | 17 | |
H | V | N | G | 一个 | T | |
8 | 22 | 14 | 7 | 1 | 20 |
3 * 15 * 13 * 5 * 20 * 17 = 994500 MOD 47 = 27 8 * 22 * 14 * 7 * 1 * 20 = 344960 MOD 47 = 27
因为两个产品评估为27(当由47修改),任务是“GO”。
/*
ID:gwj11391
LANG:C
TASK:ride
*/
#include<stdio.h>
#include<string.h>
int main(){
FILE* fin = fopen("ride.in","r");
FILE* fout = fopen("ride.out","w");
long long a=1,b=1;
int len1,len2,i=0;
char x[9],y[9];
//gets(x);
//gets(y);
fscanf(fin,"%s",x);
fscanf(fin,"%s",y);
len1=strlen(x);
len2=strlen(y);
for( ; i < len1; i++)a *= x[i] - 64;
for( i = 0; i < len2 ; i++)b *= y[i] - 64;
a %= 47;
b %= 47;
if(a==b)
fprintf(fout,"GO
");
else fprintf(fout,"STAY
");
return 0;
}