5 1 1 3 2 2 3 1 2 1 0
3 2use scanf to avoid Time Limit ExceededHintHint
<span style="font-size:18px;">#include<stdio.h>
int main()
{
int n,x,m;
while(~scanf("%d",&n),n)
{
x=0;
while(n--)
{
scanf("%d",&m);
x^=m;
}
printf("%d\n",x);
}
return 0;
}</span><span style="font-size:18px;"></span>
<span style="font-size:18px;">下面是之前我的错误的代码:</span>
<span style="font-size:18px;"></span><p>#include<stdio.h>
#include<string.h>
int a[1000001];
int s[1000001];
int b[1000001];
int main()
{
int n,i;</p><p> while(~scanf("%d",&n),n)
{
memset(s,0,sizeof(s));
for(i=1;i<=n;i++)
scanf("%d",&a[i]);
for(i=1;i<=n;i++)
{
s[a[i]]++;
b[i]=i;
}
for(i=1;i<=n;i++)
{
if(s[a[i]]&1)
{
printf("%d\n",b[i]);
}
}
}
return 0;
}
</p><span style="font-size:18px;">//能够运行,但是因为数组设的过大,导致编译器崩溃没法通过。</span>
原文地址:http://blog.csdn.net/ice_alone/article/details/38339631