SAMPLE INPUT (file ride.in)
COMETQ HVNGAT
OUTPUT FORMAT
A single line containing either the word "GO" or the word "STAY".SAMPLE OUTPUT (file ride.out)
GO
/*
ID: conicoc1
LANG: C
TASK: ride
*/
#include<stdio.h>
#include<stdlib.h>
int Converte(char str1[],char str2[])
{
int number1,number2,i;
number1=1;
number2=1;
for(i=0;str1[i]!='\0';i++)
{
number1*=(int)str1[i]-64;
}
for(i=0;str2[i]!='\0';i++)
{
number2*=(int)str2[i]-64;
}
return (number1%47)==(number2%47);
}
int main()
{
FILE *fin,*fout;
fin=fopen("ride.in","r");
fout=fopen("ride.out","w");
char str1[7],str2[7];
while(fscanf(fin,"%s%s",str1,str2)!=EOF)
{}
if(Converte(str1,str2)==1)
fprintf(fout,"%s\n","GO");
else
fprintf(fout,"%s\n","STAY");
return 0;
}
从今天开始起重写USACO的解题报告,因为顺便重新复习一下各种算法与解题技巧以巩固知识
此题比较两个字符串是否相似,'A'到'Z'分别代表数字1到26
分别计算各字符串中字母值的乘积除以47的余数,如果相等输出GO,不等输出STAY.
由于字符串不超过6个字符,注意数组开到str[7]即可