点击打开链接
Patrick and Shopping
今天 Patrick 等待着他的朋友 Spongebob 来他家玩。为了迎接 Spongebob,Patrick 需要去他家附近的两家商店 买一些吃的。他家离第一家商店有d1米远,离第二家商店有d2米远。还有,两家商店之间的距离是d3,帮Patrick计算去两家商店然后回家的最短距离。
Patrick 永远从他家出发,他不介意重复经过同一个地点或者同一条路,唯一的目标就是:最小化经过两间商店然后回家的距离。
第一行的输入包括三个整数 d1, d2, d3 (1?≤?d1,?d2,?d3?≤?108)
- d1 是 Patrick 的家离第一间商店的距离;
- d2 是 Patrick 的家离第二 间商店的距离;
- d3 是两间商店的距离 .
输出经过两家商店然后回家的最短距离。
10 20 30
1 1 5
60 4
第一个样例是先经过第一间,再经过第二间,再回家
下面是我的代码:
#include<cstdio>
#include<algorithm>
#include<cstring>
#include<cmath>
#include<cstdlib>
#include<iostream>
using namespace std;
bool cmp(int a,int b)
{return a<b;
}
int main()
{int d1,d2,d3,s[4];while(scanf("%d%d%d",&d1,&d2,&d3)!=EOF){s[0]=d1+d2+d3;s[1]=2*d1+2*d2;s[2]=2*d1+2*d3;s[3]=2*d2+2*d3;sort(s,s+4,cmp);printf("%d\n",s[0]);}return 0;
}