【发布时间】:2017-05-25 11:04:28
【问题描述】:
我试图解决在线法官的问题(https://www.codechef.com/problems/COOK82A)。以下是问题的代码。当我提交时,法官给出了运行时错误。任何人都可以帮助我
#include <stdio.h>
int main(void)
{
int a,i,j,flag,pos,flag1,pos1;
char team[15];
int score[4];
scanf("%d",&a);
while(a--)
{
for(i=0;i<4;i++)
{
scanf("%s",&team[i]);
scanf("%d",&score[i]);
}
for(i=0;i<4;i++)
{
if(team[i]=="Barcelona")
pos=i;
if(team[i]=="Eibar")
flag=i;
if(team[i]=="RealMadrid")
pos1=i;
if(team[i]=="Malaga")
flag1=i;
}
if((score[pos]>score[flag]) && (score[flag1]>score[pos1]))
printf("Barcelona\n");
else
printf("RealMadrid\n");
}
return 0;
}
【问题讨论】:
-
欢迎来到 Stack Overflow。请花时间阅读The Tour 并参考Help Center 中的材料,您可以在这里问什么以及如何问。
-
请不要在此处询问有关在线代码判断引擎的问题。任何人都不太可能从他们的测试用例中告诉你你失败的地方,因为这些通常不会被披露。即使您测试的是在本地环境中运行,您也可能错过了测试在线挑战中应用的一些边缘案例。要有创意并尝试找到它们。此外,从长远来看,这些问题可能没有任何价值,除了在在线比赛中作弊,什么都学不到。
-
team[i]是char。"Barcelona"是char*。 -
您似乎对字符串和字符之间的区别有很多误解。
-
原因是调试失败。