题目描述
你有3个需要完成的任务,完成这3个任务是需要付出代价的。
首先,你可以不花任何代价的完成一个任务;然后,在完成了第i个任务之后,你可以花费|Ai - Aj|的代价完成第j个任务。|x|代表x的绝对值。
计算出完成所有任务的最小代价。
输入描述:
一行3个整数A1,A2,A3,每个数字之间用一个空格分隔。所有数字都是整数,并且在[1,100]范围内。
输出描述:
一个整数,代表最小的代价。
示例1
输入
1 6 3
输出
5
示例2
输入
10 10 10
输出
0
题解
设最小代价为minPay
minPay=|Value1-Value2|+|Value2-Value3|
求最小的minPay,当这三个数被排序时,即Value1>=Value2>=Value3时,差值最小
那么绝对值可以去掉,minPay=Value1-Value3=max-min
那么只需找到最大值和最小值即可
#include<iostream>
using namespace std;
int main(){
int a,b,c,min,max,count;
cin>>a>>b>>c;
//a=83;b=63;c=18;
min=(a>b?b:a);
min=min>c?c:min;
max=(a<b?b:a);
max=max<c?c:max;
cout<<max-min;
return 0;
}