Description
There are three friend living on the straight line Ox in Lineland. The first friend lives at the point x1, the second friend lives at the point x2, and the third friend lives at the point x3. They plan to celebrate the New Year together, so they need to meet at one point. What is the minimum total distance they have to travel in order to meet at some point and celebrate the New Year?
It's guaranteed that the optimal answer is always integer.
The first line of the input contains three distinct integers x1, x2 and x3 (1 ≤ x1, x2, x3 ≤ 100) — the coordinates of the houses of the first, the second and the third friends respectively.
Print one integer — the minimum total distance the friends need to travel in order to meet together.
7 1 4
6
30 20 10
20
In the first sample, friends should meet at the point 4. Thus, the first friend has to travel the distance of 3 (from the point 7 to the point 4), the second friend also has to travel the distance of 3 (from the point 1 to the point 4), while the third friend should not go anywhere because he lives at the point 4.
正解:模拟
解题报告:
水题,模拟即可。
1 //It is made by jump~ 2 #include <iostream> 3 #include <cstdlib> 4 #include <cstring> 5 #include <cstdio> 6 #include <cmath> 7 #include <algorithm> 8 #include <ctime> 9 #include <vector> 10 #include <queue> 11 #include <map> 12 #include <set> 13 using namespace std; 14 typedef long long LL; 15 const int inf = (1<<30); 16 int a[4]; 17 int pos; 18 int ans; 19 20 inline int getint() 21 { 22 int w=0,q=0; char c=getchar(); 23 while((c<'0' || c>'9') && c!='-') c=getchar(); if(c=='-') q=1,c=getchar(); 24 while (c>='0' && c<='9') w=w*10+c-'0', c=getchar(); return q ? -w : w; 25 } 26 27 inline void work(){ 28 for(int i=1;i<=3;i++) a[i]=getint(); 29 sort(a+1,a+4); ans+=a[2]-a[1]; ans+=a[3]-a[2]; 30 printf("%d",ans); 31 } 32 33 int main() 34 { 35 work(); 36 return 0; 37 }