p1087 [usaco1.1.1]你的飞碟在这儿

版权声明:https://blog.csdn.net/huashuimu2003 https://blog.csdn.net/huashuimu2003/article/details/84919893

题目

背景 Background
作为usaco的第一题,你需要有字符串的基本知识
描述 Description
科学家们在研究彗星后惊讶地发现,在每一个彗星后面都有一个不明飞行物UFO。 这些不明飞行物时常来带走来自地球上的一些支持者。不幸地,他们的空间在每次旅行只能带上一群支持者。 他们要做的是用一种聪明的方案让某个支持彗星UFO的团体都被彗星带走。他们为每个彗星起了一个名字,通过这些名字来决定一个团体是不是特定的彗星带走。 那个相配方案的细节是这样的:
所有团体的名字和彗星的名字都以下列各项方式转换成一个数字: 这个最后的数字代表名字中所有字母的信息,“A” 是 1 和 “Z” 是 26。
举例来说,团体 “USACO” 会是 21191315=17955 。 如果团体的数字 mod 47 等于慧星的数字 mod 47,那么你要告诉这个团体:准备好行李,走吧 !
现在,你要写一个程序来通过团体的名字和彗星的名字来决定一个组是否应该与在那一颗彗星后面的不明飞行物搭配。
写一个程序读入彗星的名字和团体的名字,如果相等,输出"GO"否者输出"STAY"
团体的名字和彗星的名字将会是没有空格或标点的一串大写字母(不超过6个字母),
输入格式 Input Format
第 1 行:
彗星的名字(一个长度为1到6的字符串)
第 2 行:
团体的名字(一个长度为1到6的字符串)
输出格式 Output Format
只有一行----“STAY"或"GO”.
样例输入 Sample Input

COMETQ
HVNGAT

样例输出 Sample Output

GO
时间限制 Time Limitation
1s
注释 Hint
1s
来源 Source
usaco 1.1.1

代码

#include<bits/stdc++.h>
#include<string>
using namespace std;
string comet,group;
int sum1=1,sum2=1;
int main()
{
	getline(cin,comet);
	cin>>group;
	for (int i=0;i<comet.size();i++) sum1*=(int)comet[i]-'A'+1;
	for (int i=0;i<group.size();i++) sum2*=(int)group[i]-'A'+1;
	if (sum1%47==sum2%47) 
		cout<<"GO"<<endl;
	else 
		cout<<"STAY"<<endl;
	return 0;
}

猜你喜欢

转载自blog.csdn.net/huashuimu2003/article/details/84919893