标题:编程题求助
只看楼主
hdmiforc
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2019-4-1
结帖率:0
 问题点数:0 回复次数:2 
编程题求助
对一个数组的整数部分进行排序后,去除与另一个数组的重复值,再去除数组中的重复值,返回离平均值最近的元素的下标(如果同样近,则取较小的)

输入有两行,第一行是待处理数组,第二行是需要被比较的数组

输入:
[9.3,8.5,8.3,2.7,2.5]
[8,3]

输出:
0
搜索更多相关主题的帖子: 输入 编程 重复 数组 一个数 
2021-12-08 14:00
greenpop
Rank: 1
等 级:新手上路
帖 子:73
专家分:3
注 册:2011-12-22
得分:0 
没看懂您的意思。
2022-01-10 16:24
fall_bernana
Rank: 11Rank: 11Rank: 11Rank: 11
等 级:贵宾
威 望:17
帖 子:240
专家分:2086
注 册:2019-8-16
得分:0 
回复 楼主 hdmiforc
程序代码:
>>> s=[9.3,8.5,8.3,2.7,2.5]
>>> s1=[8,3]
>>> list(map(lambda x:int(x),s))  #求整
[9, 8, 8, 2, 2]
>>> s3=list(set(list(map(lambda x:int(x),s))).difference(s1)) #去除重复
>>> s3
[9, 2]
>>> s4=list(map(lambda x:abs(x-sum(s2)/2),sorted(s3)))#排序后减去平均值
>>> s4
[3.5, 3.5]
>>> s4.index(min(s4)) #求最小值(离平均值最近的值的下标)
0

2022-01-12 15:25



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-507803-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.355274 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved