python-小理的三角形

题目描述

小理有一个数组长度大小为 n ,数组中有 n 个正整数。

现在小理请你从其中选出三个元素(注意选择元素的下标不能相同,但是其值可以相同)组成一个三角形。

无法做到,请输出一行一个字符串"No solution",反之请输出这三个元素的值。

如果有多种组成三角形的元素组合,你可以输出任意一种。
输入格式

第一行是一个正整数 n 表示数组的元素个数。

接下来一行输入 n 个正整数 ai​ 表示每个数组元素的值。
输出格式

如无法做到,请输出一行一个字符串"No solution",反之请输出这三个元素的值。

如果有多种组成三角形的元素组合,你可以输出任意一种。
样例输入输出
样例输入#1

5

2 2 3 2 2
样例输出#1

2 2 3
样例输入#2

3

1 2 1
样例输出#2

No solution
数据范围

对于 100% 的数据,保证 1≤n≤100,1≤ai​≤109 。
提示说明

样例# 1 :使用 2 2 3 ,可以组成一个三角形。

样例# 2 :使用 1 2 1 ,不能组成一个三角形,无解。

来源/分类(难度系数:四星 )
二分查找 搜索 暴力 枚举

完整代码展示:

n=int(input())

list_1=list(map(int,input().split()))

list_5=\[\]

sum=0

for i in range(0,len(list_1)):

list_2=list_1:

list_2.remove(list_2i)

for j in range(0,len(list_2)):

list_3=list_2:

list_3.remove(list_2j)

for k in range(0,len(list_3)):

list_4=list_1\[i,list_2j,list_3k]

list_4.sort()

if list_4-1<list_40+list_41:

sum+=1

list_5.append(list_1i)

list_5.append(list_2j)

list_5.append(list_3k)

if sum==0:

print("No solution")

else:

print(list_50,list_51,list_52)

代码解释 :

"n=int(input()) ",让用户输入数组中的元素数量n。

"list_1=list(map(int,input().split()) ",让用户输入数组中的元素,并将起储存在list_1中。

"sum=0
for i in range(0,len(list_1)):
list_2=list_1:
list_2.remove(list_2i)
for j in range(0,len(list_2)):
list_3=list_2:
list_3.remove(list_2j)
for k in range(0,len(list_3)):
list_4=list_1\[i,list_2j,list_3k]
list_4.sort()
if list_4-1<list_40+list_41:
sum+=1
list_5.append(list_1i)
list_5.append(list_2j)
list_5.append(list_3k)
",sum为能组成三角形的元素组合的数量。任意抽取list_1中的三个元素,并将这三个元素储存在列表list_4。接着对list_4中的元素进行升序排序,判断list_4中的最大元素是否大于最小和次小元素之和:如果是,则让sum+1,将这三个元素添加进list_5中。

"if sum==0:
print("No solution")
else:
print(list_50,list_51
",判断sum是否为0,如果是:输出对应结果,否则打印list_5的前三个元素。

运行效果展示:

(声明:以上内容均为原创)

相关推荐
糖果豆豆9 分钟前
让 AI 自查三遍,它只会把错的说得更像对的——检查的人和被检查的,是同一个
算法·架构
云和数据.ChenGuang10 分钟前
python大小整数范围解析
java·开发语言·python
cpolar技术支持25 分钟前
端口被谁占了、这台机上开了哪些监听?本机起一个端口占用只读清单,cpolar 给异地同事远程看谁在监听
运维·python·内网穿透·cpolar·端口占用
长坡夜行34 分钟前
没有运维的交易系统,是怎么自己活下去的
python
WeiXin_DZbishe42 分钟前
基于springboot装修风格选择系统的设计与开发-计算机毕设【课程设计】77964
java·vue.js·spring boot·后端·python·php·课程设计
XZ-0700011 小时前
week9-三元表达式
java·前端·python
峰哥AI手记1 小时前
金融合规问答助手-RAG查询路由落地
python·aigc
benchmark_cc1 小时前
量化项目启动时,应该先设计数据接口还是先编写策略?从系统架构角度做出正确选择
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
CaptainT1 小时前
第 4 卷:面向对象、数据建模与类型系统
python
2601_962885721 小时前
如何用 Python 判断一只股票“追涨”还是“抄底”更有效?
android·开发语言·python