69,371
社区成员
发帖
与我相关
我的任务
分享
void proc(int n)
{
int i,x,y;
for(i=n-1;i>=2;i--) //数组里循环
{
y=i-1;x=0;
while(y>x)
{
while(a[x]+a[y]<a[i]&&y>x)//找到小的最合适的a[x]
x++;
while(a[x]+a[y]>a[i]&&y>x)//找到大的最合适的a[y]
y--;
if(a[x]+a[y]==a[i])//找到则输出
{
printf("%d\n",a[i]);
return;
}
}
}
printf("0\n");
}