#usaco010201. Your Ride Is Here
Your Ride Is Here
Problem Description
众所周知,每一颗好彗星的背后都有一个不明飞行物。这些不明飞行物经常来收集地球上的忠实支持者。不幸的是,他们每次旅行都只能接一组追随者。然而,他们确实会让小组提前知道,通过一个巧妙的方案,每个彗星都会得到哪个名字:他们为彗星取一个名字,这个名字和小组的名字一起,可以用来确定是否轮到某个特定的小组去(你认为彗星的名字是谁?)。匹配方案详情如下:;你的工作是编写一个程序,该程序采用一个群体和一颗彗星的名称,然后确定该群体是否应该与该彗星后面的不明飞行物同行。
群的名称和彗星的名称都按以下方式转换为一个数字:最终的数字只是名称中所有字母的乘积,其中“a”是1,“Z”是26。例如,群“USACO”将是21*19*1*3*15=17955。如果群的编号mod47与彗星的编号mod 47相同,那么您需要告诉群做好准备!(请记住,“a mod b”是a除以b后剩下的余数;34 mod 10是4。)
编写一个程序,读取彗星的名称和该组的名称,并根据上面的方案计算出这些名称是否匹配,如果匹配则打印“GO”,如果不匹配,则打印“STAY”。这些群和彗星的名字将是一串大写字母,没有空格或标点符号,最多6个字符。
Input Format
第1行:长度为1..6的大写字符串,是彗星的名称。
第2行:长度为1..6的大写字符串,是组的名称。
注意:输入文件在每行末尾都有一个新行,但没有“return”。有时,程序员为“返回”后接“换行”的Windows范例编写代码;不要那样做!使用简单的输入例程,如“readln”(对于Pascal),对于C/C++,使用“fscanf”和“fid>>字符串”。
注2:由于有额外的字符,如果您的语言使用“换行符”(也记为“\n”)和字符串结尾符(“\0”)(如C和C++所做),请确保留出足够的空间。这意味着你需要八个字符的房间,而不是六个字符。
Output Format
包含单词“GO”或单词“STAY”的单行。
COMETQ
HVNGATGO
ABSTAR
USACOSTAY
Hint
Converting the letters to numbers:
C O M E T Q
3 15 13 5 20 17
H V N G A T
8 22 14 7 1 20
then calculate the product mod 47:
3 * 15 * 13 * 5 * 20 * 17 = 994500 mod 47 = 27 8 * 22 * 14 * 7 * 1 * 20 = 344960 mod 47 = 27
Because both products evaluate to 27 (when modded by 47), the mission is 'GO'.