列表

详情


NC22744. 你要乘坐的飞碟在这里

描述

一个众所周知的事实,在每一慧星后面是一个不明飞行物UFO。 这些不明飞行物时常来收集来自在地球上忠诚的支持者。 不幸地,他们的空间在每次旅行只能带上一群支持者。 他们要做的是用一种聪明的方案让每一个团体人被慧星带走。 他们为每个慧星起了一个名字,通过这些名字来决定一个团体是不是特定的慧星带走。 那个相配方案的细节在下面被给出; 你的工作要写一个程序来通过团体的名字和彗星的名字来决定一个组是否应该与在那一颗慧星后面的不明飞行物搭配。 团体的名字和慧星的名字都以下列各项方式转换成一个数字: 这个最后的数字代表名字中所有字母的信息,"A" 是 1 和 "Z" 是 26。 举例来说,团体 "USACO" 会是 21*19*1*3*15=17955 。 如果团体的数字 mod 47 等于慧星的数字 mod 47,那么你要告诉这个团体准备好被带走 ! 写一个程序读入慧星的名字和团体的名字,如果搭配打印"GO",否则打印"STAY" 团体的名字和慧星的名字将会是有没有空格或标点的一串大写字母(不超过6个字母)

输入描述

第 1
行: 彗星的名字(一个长度为1到6的字符串)

第 2 行: 团体的名字(一个长度为1到6的字符串)

输出描述

单独一行包含"STAY"或"GO".

示例1

输入:

COMETQ
HVNGAT

输出:

GO

示例2

输入:

ABSTAR
USACO

输出:

STAY

原站题解

上次编辑到这里,代码来自缓存 点击恢复默认模板

C++11(clang++ 3.9) 解法, 执行用时: 4ms, 内存消耗: 404K, 提交时间: 2020-01-05 17:36:14

#include<bits/stdc++.h>
using namespace std;
int main()
{
	string a,b;cin>>a>>b;
	int s1=1,s2=1;
	for(int i=0;i<a.size();i++)s1*=a[i]-'A'+1;
	for(int i=0;i<b.size();i++)s2*=b[i]-'A'+1;
	cout<<(s1%47==s2%47?"GO":"STAY");
}

Python3 解法, 执行用时: 41ms, 内存消耗: 4688K, 提交时间: 2022-07-06 13:19:28

a = input()
b = input()

c,d = 1,1

for i in a:
    c *= ord(i)-64

for i in b:
    d *= ord(i)-64
    
if c%47==d%47:
    print("GO")
else:
    print("STAY")

上一题