az,先找出输入数据中最大的,就是$a+b+c$的值。再用这个值减去其他三个数,就得到了$a,b,c$。按照要求输出就行了
by chichichichi @ 2020-10-20 14:26:55
用max求出最大值,怎么知道那三个数是哪几个?
by qx0921 @ 2020-10-20 15:19:23
@[qx0921](/user/410857) 可以这样
```cpp
for(int i=1;i<=4;i++)
scanf("%d",&a[i]);
sort(a+1,a+n+1);
for(int i=3;i>=1;i--)
printf("%d",a[4]-a[i]);
```
by chichichichi @ 2020-10-20 15:58:31
@[chichichichi](/user/114012)
谢谢,我感觉挺好。可惜我才刚开始学,有的地方还没学,看不懂
by qx0921 @ 2020-10-20 16:26:27
@[chichichichi](/user/114012) 我去查查sort是什么
by qx0921 @ 2020-10-20 16:32:19
@[qx0921](/user/410857) 我这样写比较懒……
sort是快排函数,默认是升序,需要调用头文件$<algorithm>$。数组从下标0开始,共n个元素时这样用
```cpp
sort(a,a+n);
```
我上面那个是下标1开始,共四个元素(n=4,打顺手了)
这样排序之后$a[4]$就是最大值,依次减去$a[3],a[2],a[1]$就能得到非递减序列了
by chichichichi @ 2020-10-20 16:48:21
@chichichi
写出来了,,谢谢。
by qx0921 @ 2020-10-20 22:24:38