Your Ride Is Here-section1.1

题目大意

    有两个由大写字母构成的字符串(长度在1到6之间),将字符串每个字符对应成数字:A-1;B-2;......;Z-26。并将字符串内字母对应的数字连乘。如:“USACO”就是21*19*1*3*15=17955。
    比较两个字符串翻译成数字之后模47的结果,相同则输出 GO;不同则输出STAY。
输入格式
line 1:第一个字符串
line 2:第二个字符串
输出格式
一行,GO或者STAY
样例输入
COMETQ
HVNGAT
样例输出
GO

题解

将字符串转化成数字乘积,为了避免越界,可以每一步都模47。然后比较两者答案。

代码

#include<stdio.h>
#include<string.h>
int main()
{
 FILE *fin  = fopen ("ride.in", "r");
  FILE *fout = fopen ("ride.out", "w");
char str1[6],str2[6];

int a=1,b=1,i1,i2,i;

fscanf(fin,"%s %s",str1,str2);
i1=strlen(str1);
i2=strlen(str2);
for(i=0;i<i1;i++)
{
    a=a*(str1[i]-'A'+1)%47;
}
    for(i=0;i<i2;i++)
{
    b=b*(str2[i]-'A'+1)%47;
}
if(a==b)
{
    fprintf(fout,"GO\n");
}
else
{
    fprintf(fout,"STAY\n");
}
return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值