你的飞碟在这儿(洛谷-P1200 )
題目描述
眾所周知,在每一個彗星后都有一只UFO。這些UFO時常來收集地球上的忠誠支持者。不幸的是,他們的飛碟每次出行都只能帶上一組支持者。因此,他們要用一種聰明的方案讓這些小組提前知道誰會被彗星帶走。他們為每個彗星起了一個名字,通過這些名字來決定這個小組是不是被帶走的那個特定的小組(你認為是誰給這些彗星取的名字呢?)。關于如何搭配的細節會在下面告訴你;你的任務是寫一個程序,通過小組名和彗星名來決定這個小組是否能被那顆彗星后面的UFO帶走。
小組名和彗星名都以下列方式轉換成一個數字:最終的數字就是名字中所有字母的積,其中“A”是1,“Z”是26。例如,“USACO”小組就是21*19*1*3*15=17955。如果小組的數字 mod 47等于彗星的數字mod 47,你就得告訴這個小組需要準備好被帶走!(記住“a mod b”是a除以b的余數;34 mod 10等于4)
寫出一個程序,讀入彗星名和小組名并算出用上面的方案能否將兩個名字搭配起來,如果能搭配,就輸出“GO”,否則輸出“STAY”。小組名和彗星名均是沒有空格或標點的一串大寫字母(不超過6個字母)。
輸入輸出格式
輸入格式:
第1行:一個長度為1到6的大寫字母串,表示彗星的名字。
第2行:一個長度為1到6的大寫字母串,表示隊伍的名字。
輸出格式:
一行,“GO”或“STAY”。
輸入輸出樣例
輸入樣例#1:
COMETQ
HVNGAT
輸出樣例#1:
GO
輸入樣例#2:
ABSTAR
USACO
輸出樣例#2:
STAY
源代碼
#include<iostream> #include<cstring> using namespace std; int main() {char star[7],line[7];int num_star=1,num_line=1;int i,n_star,n_line;cin>>star;cin>>line;n_star=strlen(star);n_line=strlen(line);for(i=0;i<n_star;i++) num_star*=(star[i]-64);//計算彗星轉換成的數字for(i=0;i<n_line;i++) num_line*=(line[i]-64);//計算小組轉換成的數字if(num_star%47==num_line%47) cout<<"GO"<<endl;//符合條件,帶走else cout<<"STAY"<<endl;//不符合條件,留下return 0; }?
總結
以上是生活随笔為你收集整理的你的飞碟在这儿(洛谷-P1200 )的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 级数求和(信息学奥赛一本通-T1087)
- 下一篇: 最大数输出(信息学奥赛一本通-T1053