题目描述
一个众所周知的事实,在每一慧星后面是一个不明飞行物UFO。 这些不明飞行物时常来收集来自在地球上忠诚的支持者。 不幸地,他们的空间在每次旅行只能带上一群支持者。 他们要做的是用一种聪明的方案让每一个团体人被慧星带走。 他们为每个慧星起了一个名字,通过这些名字来决定一个团体是不是特定的慧星带走。 那个相配方案的细节在下面被给出; 你的工作要写一个程序来通过团体的名字和彗星的名字来决定一个组是否应该与在那一颗慧星后面的不明飞行物搭配。 团体的名字和慧星的名字都以下列各项方式转换成一个数字: 这个最后的数字代表名字中所有字母的信息,"A" 是 1 和 "Z" 是 26。 举例来说,团体 "USACO" 会是 21*19*1*3*15=17955 。 如果团体的数字 mod 47 等于慧星的数字 mod 47,那么你要告诉这个团体准备好被带走 ! 写一个程序读入慧星的名字和团体的名字,如果搭配打印"GO"否者打印"STAY" 团体的名字和慧星的名字将会是有没有空格或标点的一串大写字母(不超过6个字母),
Examples:
Input | Output |
COMETQ
HVNGAT | GO |
ABSTAR
USACO | STAY |
PROGRAM NAME
输入
INPUT FORMAT
第 1 行:
|
彗星的名字(一个长度为1到6的字符串)
|
第 2 行:
|
团体的名字(一个长度为1到6的字符串)
|
输出
OUTPUT FORMAT
单独一行包含"STAY"或"GO".
样例输入
COMETQ HVNGAT
样例输出
GO
#include<iostream> #include<string> using namespace std; int main() { int i,j,sum1=1,sum2=1; string a,b; cin>>a>>b; for(i=0;i<a.length();i++) sum1*=(a[i]-64); for(j=0;j<b.length();j++) sum2*=(b[j]-64); if(sum1%47==sum2%47) cout<<"GO"<<endl; else cout<<"STAY"<<endl; return 0; }
方法可能不是最优的,毕竟我现在才是学生,学习的时间还不算很长,这个可能只供参考提供一下思路,见多识广嘛,你有更好的方法也能留留言,大家交流交流