Description
王寒聚聚喜欢吃薯片,作为ACM界的美女,她总是有吃不完的薯片,她对于库存的每一包薯片都给了一个喜好值(按她喜欢的程度)。今天寒聚聚把她库存的4包薯片全部拿了出来,决定挑喜好值最接近的2包一起吃。(不知道为什么寒聚聚是吃不胖的)
请给出最接近的两个喜好值。若答案不唯一,则输出其中较小的一对。
Input
给出四包薯片的喜好值a,b,c,d(喜好值皆为整型)
Output
输出两个整数,即最接近的两个喜好值且第一个值不大于第二个值。输出占一行,两个整数用空格隔开。
Sample Input
95 20 20 95
Sample Output
20 20
想了一种超麻烦的方法做到一半发现不对劲写了个更简单的出来。
麻烦的没写到最后就不贴了。
#include<stdio.h>
int main()
{
int a[10];
int i,j,b,c,d;
int r,p,q,s;
while(~scanf("%d%d%d%d",&r,&p,&q,&s))
{
a[1]=r;
a[2]=p;
a[3]=q;
a[4]=s;
for(i=1;i<4;i++)
{
for(j=i+1;j<=4;j++)
{
if(a[i]>a[j])
{
a[0]=a[i];
a[i]=a[j];
a[j]=a[0];
}
}
}
b=a[4]-a[3];
c=a[3]-a[2];
d=a[2]-a[1];
if(d<=c)
printf("%d %d\n",a[1],a[2]);
else if(c<=d)
printf("%d %d\n",a[2],a[3]);
else
printf("%d %d\n",a[3],a[4]);
}
return 0;
}