2466: 数字中的数字
Time Limit: 1 Sec
Memory Limit: 128 MB
Submit: 66
Solved: 48
[
Submit][
Status][
Web Board]
Description
输入一个3位以上的整数,求其中最大的两数字之和与最小的两个数字之和的差。例如:输入8729,输出8(即9+8-2-7=8),再如,输入24825,输出9(即8+5-2-2)。
Input
一个3位以上的整数
Output
输入的数据中,最大的两数字之和与最小的两个数字之和的差
Sample Input
8729
Sample Output
8
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a,b[10];
scanf("%d",&a);
int i=0,j,s,m;
s=a;
while(s>0)
{
b[i]=s%10;
s=s/10;
i++;
m=i;
}
for(i=0; i<m-1; i++)
for(j=0; j<m-i-1; j++)
if(b[j]>b[j+1])
{
int t;
t=b[j];
b[j]=b[j+1];
b[j+1]=t;
}
printf("%d\n",(b[m-1]+b[m-2])-(b[0]+b[1]));
return 0;
}