杭电OJ题目2034,我的答案正确却总是wrong answer

我对比了讨论里面的,发现都差不多,但是我就是wronganswer!已经在这种问题上发生了好几次了,求告知我是怎么死的啊!题目:我的代码:http://codepad.o... 我对比了讨论里面的,发现都差不多,但是我就是wrong answer!已经在这种问题上发生了好几次了,求告知我是怎么死的啊!题目:

我的代码:http://codepad.org/FwFNsX5W
展开
 我来答
匿名用户
2015-02-06
展开全部
对于acm的题目,我觉得如果在自己的电脑上运行对了,提交错误,怎么找出来错误,第一,反复读题目,看自己的程序中都满足题目中的要求没有,有时候输出的形式也要注意一下,有可能是要你把所有需要输入的数据都输进去,然后在吧所有输入的处理后再输出,有可能也是输入一个就处理一个,这样的情况也有的,需要注意下,再就是定义的数组范围,也是一个容易出错的,这些是我做题发现的一些,一般提交错误,大多数情况还是算法的问题,因为在检查你的程序的时候,是很多数据,而且边界条件也要满足,自己多测试下,看看算法对不对,自己喜欢它,就坚持下去。
杭电的输入要判断文件结束.详见杭电acm主页第一栏F.A.Q
P.S.新用一个OJ时最好先读一遍它的FAQ,了解它的提交规则,避免走许多弯路啊...
只能帮你到这儿了。
PS:昨天你采纳的就是我,你写的真的很复杂。只需要在第二个集合中寻找第一个集合中的元素判断是否输出就可以。
其实这种事情上面没必要坚持什么,你看到比自己写的好的代码就抄过来,放下原来自己觉得对但实际上没人认同的算法。才会进步啊。
porker2008
推荐于2016-09-05 · TA获得超过1.4万个赞
知道大有可为答主
回答量:7066
采纳率:62%
帮助的人:1.1亿
展开全部
#include "stdio.h"

int main()
{
int n,m,i,j,temp,flag;
int a[220],b[100];
while(scanf("%d %d",&n,&m))
{
temp=0;
flag=0;
if(n==0 && m==0)
break;
for(i=0;i<n+m;i++)
scanf("%d",&a[i]);
for(i=0;i<n;i++)
{
for(j=n;j<m+n;j++)
{
if(a[i]==a[j])
break;
}
if(j==m+n)
flag=1;
if(flag==1)
b[temp++]=a[i];
flag=0;
}
if(temp==0)
printf("NULL");
else
for(i=0;i<temp;i++)
{
for(j=i;j<temp;j++)
{
if(b[i]>b[j])
n=b[j],b[j]=b[i],b[i]=n;
}
}
for(i=0;i<temp;i++)
if(i==0 || b[i] != b[i-1])
printf("%d ",b[i]);
printf("\n");
}
return 0;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
enjoy慢慢滴
2015-02-06 · TA获得超过108个赞
知道小有建树答主
回答量:86
采纳率:75%
帮助的人:18.6万
展开全部

把代码发出来吧  链接点不进去

你的代码是好用的啊

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式