北大ACM1002题 在Visual c++上执行成功,为什么提交后总是Wrong Answer

#include<stdio.h>#include<stdlib.h>#include<string.h>structphone{charnum[8];intcount;... #include<stdio.h>
#include<stdlib.h>
#include<string.h>

struct phone
{
char num[8];
int count;
};

void convert(char q[], char p[])
{
int i,j=0;char d;

for(i=0;j<7;i++)
switch(p[i])
{
case 'A': case 'B': case 'C':{q[j]='2';j++;continue;}
case 'D': case 'E': case 'F':{q[j]='3';j++;continue;}
case 'G': case 'H': case 'I':{q[j]='4';j++;continue;}
case 'J': case 'K': case 'L':{q[j]='5';j++;continue;}
case 'M': case 'N': case 'O':{q[j]='6';j++;continue;}
case 'P': case 'S': case 'R':{q[j]='7';j++;continue;}
case 'V': case 'T': case 'U':{q[j]='8';j++;continue;}
case 'Y': case 'W': case 'X':{q[j]='9';j++;continue;}
case '-':continue;
default:{ d=p[i];q[j]=d;j++;continue;}
}
q[7]=0;

}

int compare(const void *a,const void *b)
{
return strcmp(((phone *)a)->num,((phone *)b)->num);

}

int main()
{

FILE *fli;
FILE *flo;
fli=stdin;
flo=stdout;
char p1[30];
int m;

while( scanf("%d",&m)!=EOF)
{
phone *sta=new phone[m];
int i,t=0;
char q1[8]={'0','0','0','0','0','0','0',0};

for(i=1;i<=m;i++)
{ scanf("%s",p1);
int oo=0;
convert(q1,p1);
if(t==0)
{ strcpy(sta[0].num,q1);
sta[0].count=1;
t++; }
else {
for(int j=0;j<t;j++)
{
if(strcmp(sta[j].num,q1)==0)
{sta[j].count++;
oo=1;
break;}
}

if(oo==0)
{

strcpy(sta[t].num,q1);
sta[t].count=1;
t++;
}

}//else

}//for

qsort(sta,m,sizeof(phone),compare);

int uu=0,k;
for(i=0;i<t;i++)
{
if(sta[i].count!=1){
for(k=0;k<3;k++)
printf("%c",sta[i].num[k]);
printf("-");
for(;k<7;k++)
printf("%c",sta[i].num[k]);
printf(" %d\n",sta[i].count);
uu=1;
}
}
if(uu==0)
printf("No duplicates.\n");

}//while
return 0;

}

}
这是对的!只是我的程序支持多组数据测试,而题目没这要求!!!!!
展开
 我来答
河边一支柳
2010-05-09 · TA获得超过434个赞
知道小有建树答主
回答量:324
采纳率:0%
帮助的人:251万
展开全部
你应该刚开始做在线测试吧

wrong answer 说明你程序有问题

你自己的测试数据通过,不代表他们的测试数据就通过了
百度网友db582c3
2010-05-09 · TA获得超过1268个赞
知道答主
回答量:290
采纳率:0%
帮助的人:147万
展开全部
懒得看代码........

还是直接把你算法写上吧。
这里知道ACM的我估计都懒得读你的代码。

很有可能是你的输出有问题。
除非方法太笨,否则一般时间都是没问题的。

另外可以去ACM的论坛看看。这里应该帮助不大。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式