栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Python面试题

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python面试题

前言

小编在这里汇总了一些现在的python面试题,安利一波小福利送给感兴趣的同学。

题目1

某俱乐部有4只足球队 A、B、C、D 队,现按照 1至20 的级别划分每个队伍,目前每队的战斗力水平级别依次为 10、7、5、4。现俱乐部为了优化各队的能力水平,决定每月底从战斗力战斗最高的队伍抽出部分人力资源,平均分配到其他小队(规则:分配3个战斗力的人力资源出来到其他小队,所以经过一个月的调整分配,各小队现在的战斗力水平:7、8、6、5) 那么 请问,经过五年的战斗力优化调整后,哪个小队的战斗力最高,为多少?请编程求解该问题, 并思考是否为最优解。同时能否有对应的算法可以快速得出对应的结果?

问题解析:

该问题说白了,就是将列表[10、7、5、4]根据每个月调整一次,每次对该列表最大的值进行减3,其余值分别加1,理解这样的逻辑之后,那大致代码实现如下

start_list = [10, 7, 5, 4]
new_list = []

for num in range(60):  # 这里的 range(60) 表示 60 个月(即五年)
    for i in start_list:
        if i == max(start_list):
            new_list.append(i-3)
        else:
            new_list.append(i+1)
    start_list = new_list
    new_list = []

print(start_list)

经过五年,那就是 60 个月,结果为[6, 7, 5, 8]

最后一个小队的战斗力最高,为 8

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/875291.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号