C语言:选出3根棍子组成周长尽可能长的三角形

编程入门 行业动态 更新时间:2024-10-25 16:18:32

C语言:选出3根棍子组成周长尽可能长的三<a href=https://www.elefans.com/category/jswz/34/1769024.html style=角形"/>

C语言:选出3根棍子组成周长尽可能长的三角形

题目描述:
有n棍棍子,棍子i的长度为ai,想要从中选出3根棍子组成周长尽可能长的三角形。请输出最大的周长,若无法组成三角形则输出0。
算法分析:
选择3根棍子,它们能组成三角形的充要条件为:最长棍子的长度<其余两根棍子的长度之和。所以我们可以先用三重循环枚举所有的棍子选择方案,再利用条件判断是否能组成三角形。

#include<stdio.h>
int main()
{int max(int x,int y);int ans=0;int n,a[100];printf("please enter n:");scanf("%d",&n);printf("please inputs 10 numbers:");for(int m=0;m<n;m++)scanf("%d",&a[m]);for(int i=0;i<n;i++)for(int j=i+1;j<n;j++)for(int k=j+1;k<n;k++){int l=a[i]+a[j]+a[k];//周长int m=max(a[i],max(a[j],a[k]));//最长棍子的长度int r=l-m;//其余两根棍子的长度之和//判断是否可以组长三角形if(m<r){ans=max(ans,l);}}printf("%d",ans);return 0;} //调用函数求俩者中的最大值 int max(int x,int y){return (x>y?x:y);}

运行结果:
please enter n:5
please inputs 5 numbers:2 3 4 5 10
12

更多推荐

C语言:选出3根棍子组成周长尽可能长的三角形

本文发布于:2024-02-27 13:06:26,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1706655.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:角形   周长   棍子   语言

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!