第一眼思路是画了个三角形
于是感觉非常简单
但总感觉有点诡异
于是突然意识到
坑点是这三个数据并不一定能组成三角形
当不是三角形的时候
原路返回而不走第三个
的情况下用的路程更少
#include<stdio.h>
#include<algorithm>
using namespace std;
int main() {
int T;
int k,i;
long long a[3];
long long sum;
scanf("%d",&T);
for(k=1;k<=T;k++) {
for(i=0; i<3; i++)
scanf("%lld",&a[i]);
sort(a,a+3);
sum=a[0]+a[1];
if(a[2]<sum)
sum+=a[2];
else
sum+=sum;
printf("Case #%d: %lld\n",k,sum);
}
return 0;
}
题目地址:【郑轻】[1799]wrz的压岁钱