A. The New Year: Meeting Friends

http://codeforces.com/problemset/problem/723/A

题意: 给你三个点 找出一个点到这三个点的距离的绝对值之和最小

思路:这个点肯定在最大点和最小点之间 扫一遍就好了

 1 #include <stdio.h>
 2 #include <iostream>
 3 #include <stdlib.h>
 4 using namespace std;
 5 const int maxn=110;
 6 int dis[maxn];
 7 int x[maxn];
 8 int main()
 9 {
10     while(scanf("%d %d %d",&x[1],&x[2],&x[3])!=EOF)
11     {
12         int minn=0x3f3f3f3f;
13 
14         for(int i=min(x[1],min(x[2],x[3]));i<=max(x[1],max(x[2],x[3]));i++)
15         {
16             dis[i]=0;
17             for(int j=1;j<=3;j++)
18                 dis[i]+=abs(x[j]-i);
19                 minn=min(minn,dis[i]);
20         }
21         printf("%d\n",minn);
22     }
23     return 0;
24 }
View Code

相关文章: