最大三角形

简介: 最大三角形

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

输入格式:

在一行中给出小棍的个数 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]: 无效的存储参数 问题处理
|
4月前
|
JavaScript 前端开发 BI
填报表之自动计算
自动计算,是指填报的时候根据用户录入的某些单元格的值,自动计算出另外一些单元格的值,从而简化用户的输入,同时避免错误数据的录入。下面我们看下润乾报表里支持的几种自动计算方式。
|
JavaScript 开发者
vue解决报错Unable to preventDefault inside passive event listener invocation.
vue解决报错Unable to preventDefault inside passive event listener invocation.
1644 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)
213 0
|
SQL 关系型数据库 OLAP
AnalyticDB PostgreSQL 实例创建与访问练习题
AnalyticDB PostgreSQL 实例创建与访问练习题
163 0
|
4天前
|
人工智能 运维 安全
|
2天前
|
人工智能 异构计算
敬请锁定《C位面对面》,洞察通用计算如何在AI时代持续赋能企业创新,助力业务发展!
敬请锁定《C位面对面》,洞察通用计算如何在AI时代持续赋能企业创新,助力业务发展!