400字范文,内容丰富有趣,生活中的好帮手!
400字范文 > 南邮 OJ 2063 突发奇想的茂凯

南邮 OJ 2063 突发奇想的茂凯

时间:2022-07-01 00:42:02

相关推荐

南邮 OJ 2063 突发奇想的茂凯

突发奇想的茂凯

时间限制(普通/Java): 1000 MS/3000 MS 运行内存限制 : 65536 KByte

总提交 : 224测试通过 : 87

比赛描述

扭曲树精茂凯,英勇无畏的他每次战斗之后都会散落一些树枝,怀旧的他都将其收藏了起来,看做是自己胜利的勋章,已知总共收藏了n根树枝,且第i根树枝长为ai。

有一天,茂凯突发奇想——要是从中选出3根树枝,组成周长尽可能大的三角形,最大的可能周长为多少?

输入

首先输入一个正整数T,表示有T组数据(1≤T≤100)

对于每组数据,先输入一个正整数n,表示茂凯收藏了n根树枝(3≤n≤20)

然后再输入n个正整数,对于第i个数,表示第i根树枝长为ai,(1≤ai≤100000)

输出

对于每组测试数据,输出最大周长三角形的周长,若给出的树枝均无法构成三角形,请输出-1;

样例输入

2

5

234510

4

451020

样例输出

12

-1

题目来源

yuman

#include<iostream>#include<algorithm>using namespace std;int main(){int t,n,i,a[20];scanf("%d",&t);while(t--){scanf("%d",&n);for(i=0;i<n;i++){scanf("%d",a+i);}sort(a,a+n);i=n-3;while(i>=0){if(a[i]+a[i+1]>a[i+2]){break;}i--;}if(i>=0){printf("%d\n",a[i]+a[i+1]+a[i+2]);}else{printf("-1\n");}}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。