最大三角形

简介: 最大三角形

有一个游戏,玩法是在一堆长度不一的小棍中找出三根棍子,拼出一个周长最大的三角形。有什么策略能快速的找到三根小棍么?

输入格式:

在一行中给出小棍的个数 N,另一行中分别给出 N 个小棍的长度,之间用空格隔开。

输出格式:

如果小棍的数量小于 3,则输出小棍的个数不能组成三角形;如果找到最大的三角形,则输出最大三角形的周长是?,并在下一行中输出组成最大三角形的三条边是?,?,?,三条边之间用英文逗号隔开并从小到大输出;如果没有找到,则输出没有找到能组成三角形的小棍。

#include <stdio.h>
#include <malloc.h>
void main()
{
    int len;
    int *mLength;
    scanf("%d", &len);
    if(len<3)
    {
        printf("小棍的个数不能组成三角形");
        return;
    }
    mLength = (int *)malloc(len * sizeof(int));
    for (int i = 0; i < len; i++)
    {
        scanf("%d", &mLength[i]);
    }
    Sort(mLength,len);
    Select(mLength,len);
}
void Select(int *mLength,int len)
{
    int j,k;
    int sum =0;
    for(int i = 0;i <len ;i++)
    {
        for(j = i +1;j < len;j++)
        {
            for(k=j+1;k <len; k++)
            {
                 if(mLength[i] + mLength[j] > mLength[k] && mLength[i] - mLength[j] < mLength[k])
                 {
                    sum = mLength[i] + mLength[j]+mLength[k];
                    printf("最大三角形的周长是%d\n",sum);
                    printf("组成最大三角形的三条边是%d,%d,%d",mLength[k],mLength[j],mLength[i]);
                    return;
                    }
            }   
        }
    }
    if(sum == 0 )
    {
        printf("没有找到能组成三角形的小棍");
    }
}
void Sort(int *mLength, int len)
{
    int j,temp;
    int max = 0;
    for (int i = 0; i < len; i++)
    {
        max = i;
        for (j = i + 1; j < len; j++)
        {
            if (mLength[j] > mLength[max])
            {
                max = j;
            }
        }
        if(i != max)
        {
            temp = mLength[i];
            mLength[i] = mLength[max];
            mLength[max] = temp;
        }
    }
} 


相关文章
|
SQL 存储 测试技术
达梦(DM)报错[-3209]: 无效的存储参数
【1月更文挑战第3天】达梦(DM)报错[-3209]: 无效的存储参数 问题处理
|
5月前
|
JavaScript 前端开发 BI
填报表之自动计算
自动计算,是指填报的时候根据用户录入的某些单元格的值,自动计算出另外一些单元格的值,从而简化用户的输入,同时避免错误数据的录入。下面我们看下润乾报表里支持的几种自动计算方式。
|
JavaScript 开发者
vue解决报错Unable to preventDefault inside passive event listener invocation.
vue解决报错Unable to preventDefault inside passive event listener invocation.
1842 0
|
JavaScript
🚀VuePress-theme-hope2 搭建个人网站,万字长文保姆级教程,包含自动部署、评论、搜索等功能1
🚀VuePress-theme-hope2 搭建个人网站,万字长文保姆级教程,包含自动部署、评论、搜索等功能
|
测试技术
微软发布Phi-3,性能超Llama-3,可手机端运行
【5月更文挑战第8天】微软新发布的phi-3-mini是一款拥有38亿参数的语言模型,可在手机上运行,性能媲美GPT-3.5。通过扩展版筛选数据集和对齐训练提升效能,phi-3还包括70亿和140亿参数的变体,表现更优。此模型的出现标志了移动设备上部署大型语言模型的可能,但也面临计算资源限制和潜在偏见问题,需更多研究确保可靠性和公平性。[链接](https://arxiv.org/abs/2404.14219)
243 0
|
SQL 关系型数据库 OLAP
AnalyticDB PostgreSQL 实例创建与访问练习题
AnalyticDB PostgreSQL 实例创建与访问练习题
167 0
|
4天前
|
弹性计算 人工智能 安全
云上十五年——「弹性计算十五周年」系列客户故事(第二期)
阿里云弹性计算十五年深耕,以第九代ECS g9i实例引领算力革新。携手海尔三翼鸟、小鹏汽车、微帧科技等企业,实现性能跃升与成本优化,赋能AI、物联网、智能驾驶等前沿场景,共绘云端增长新图景。
|
10天前
|
存储 弹性计算 人工智能
【2025云栖精华内容】 打造持续领先,全球覆盖的澎湃算力底座——通用计算产品发布与行业实践专场回顾
2025年9月24日,阿里云弹性计算团队多位产品、技术专家及服务器团队技术专家共同在【2025云栖大会】现场带来了《通用计算产品发布与行业实践》的专场论坛,本论坛聚焦弹性计算多款通用算力产品发布。同时,ECS云服务器安全能力、资源售卖模式、计算AI助手等用户体验关键环节也宣布升级,让用云更简单、更智能。海尔三翼鸟云服务负责人刘建锋先生作为特邀嘉宾,莅临现场分享了关于阿里云ECS g9i推动AIoT平台的场景落地实践。
【2025云栖精华内容】 打造持续领先,全球覆盖的澎湃算力底座——通用计算产品发布与行业实践专场回顾
|
2天前
|
云安全 人工智能 安全
Dify平台集成阿里云AI安全护栏,构建AI Runtime安全防线
阿里云 AI 安全护栏加入Dify平台,打造可信赖的 AI