您的位置:首页 > 其它

HDU 1073 Online Judge

2015-03-06 12:39 351 查看
/*
模拟OJ系统进行测评的过程
如何去测评两组数据呢?完全匹配当然就是AC啦,那PE和WA如何发现呢?
题目思路:
将输入的两组数据去掉'\n','\t' 和' ',得到新的两组数据,
那么这两组数据如果不是完全匹配的,结果一定是WA。
如果这两组匹配了,去掉'\n','\t' 和' '前的不完全匹配则是PE。
如果去掉前的两组数据完全匹配,则是AC。
*/
# include <stdio.h>
# include <string.h>

int main(void)
{
int T,count= 0;
char start[10],end[10],str[50],str2[50],cstr[50]={'0'},cstr2[50]={'0'};
scanf("%d", &T);
getchar();    //吸收回车符。
while(T--)
{
gets(start);
gets(str);
for(int i = 0; i < strlen(str); i++)
{
if((str[i] != '\n') && (str[i] != ' ') && (str[i] != '\t'))
{
cstr[count] = str[i];
count++;
}
}
gets(end);
while(end[0] == '\0')
{
count++;
str[count] = '\n';
gets(end);
}
count = 0;
gets(start);
gets(str2);
for(int j = 0; j < strlen(str2); j++)
{
if((str2[j] != '\n') && (str2[j] != ' ') && (str2[j] != '\t'))
{
cstr2[count] = str2[j];
count++;
}
}
gets(end);//gets函数会把‘\n’转化成‘\0’
while(end[0] == '\0')
{
count++;
str2[count] = '\n';
gets(end);
}
count = 0;
//printf("%s\n", cstr);
//printf("%s\n", cstr2);
int flag = strcmp(cstr, cstr2);
if(flag != 0)
printf("Wrong Answer\n");
else if((strcmp(str, str2)) != 0)
printf("Presentation Error\n");
else
printf("Accepted\n");
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: