USACO1.1.1 - PROB Your Ride Is Here

举报
小哈里 发表于 2022/05/11 00:33:05 2022/05/11
【摘要】 你的乘车在这里 这是一个众所周知的事实,每个好彗星后面是一个不明飞行物。这些不明飞行物常常从地球上收集忠实的支持者。不幸的是,他们只有在每次旅行中有一群追随者的空间。然而,他们确实让团队提前知道,这将是一个聪明的计划为每个彗星挑选:他们选择一个彗星的名称,以及组的名称,可以用于确定是否一个特定的群体的转向(你认为彗星的名字?...

你的乘车在这里

这是一个众所周知的事实,每个好彗星后面是一个不明飞行物。这些不明飞行物常常从地球上收集忠实的支持者。不幸的是,他们只有在每次旅行中有一群追随者的空间。然而,他们确实让团队提前知道,这将是一个聪明的计划为每个彗星挑选:他们选择一个彗星的名称,以及组的名称,可以用于确定是否一个特定的群体的转向(你认为彗星的名字?)。匹配方案的细节如下:你的工作是编写一个程序,它取一个组和彗星的名称,然后确定该组是否应该与该彗星后面的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  
然后计算产品mod 47:
3 * 15 * 13 * 5 * 20 * 17 = 994500 MOD 47 = 27 
8 * 22 * 14 * 7 * 1 * 20 = 344960 MOD 47 = 27

因为两个产品评估为27(当由47修改),任务是“GO”。



  
  1. /*
  2. ID:gwj11391
  3. LANG:C
  4. TASK:ride
  5. */
  6. #include<stdio.h>
  7. #include<string.h>
  8. int main(){
  9. FILE* fin = fopen("ride.in","r");
  10. FILE* fout = fopen("ride.out","w");
  11. long long a=1,b=1;
  12. int len1,len2,i=0;
  13. char x[9],y[9];
  14. //gets(x);
  15. //gets(y);
  16. fscanf(fin,"%s",x);
  17. fscanf(fin,"%s",y);
  18. len1=strlen(x);
  19. len2=strlen(y);
  20. for( ; i < len1; i++)a *= x[i] - 64;
  21. for( i = 0; i < len2 ; i++)b *= y[i] - 64;
  22. a %= 47;
  23. b %= 47;
  24. if(a==b)
  25. fprintf(fout,"GO\n");
  26. else fprintf(fout,"STAY\n");
  27. return 0;
  28. }


文章来源: gwj1314.blog.csdn.net,作者:小哈里,版权归原作者所有,如需转载,请联系作者。

原文链接:gwj1314.blog.csdn.net/article/details/54766856

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。