你要的飞碟在这儿

题意

通过小组名和彗星名来决定这个小组是否能被那颗彗星后面的UFO带走。小组名和彗星名都以下列方式转换成一个数字:最终的数字就是名字中所有字母的积,其中“A”是1,“Z”是26。例如,“USACO”小组就是21*19*1*3*15=17955。如果小组的数字 mod 47等于彗星的数字mod 47,你就得告诉这个小组需要准备好被带走。


分析

先把每一个字母所代表的数字算出来,这样就很好做了。


var
ch:char;
a,b:string;
i,x1,x2:longint;
w:array['A'..'Z']of longint;
begin
    for ch:='A' to 'Z' do
    w[ch]:=ord(ch)-64;
    readln(a);
    readln(b);
    x1:=1;x2:=1;
    for i:=1 to length(a) do
    x1:=x1*w[a[i]];
    for i:=1 to length(b) do
    x2:=x2*w[b[i]];
    if x1 mod 47=x2 mod 47 then write('GO') else write('STAY');
end.

posted @ 2017-02-04 19:57  银叶草  阅读(106)  评论(0编辑  收藏  举报
Live2D