【Python训练营】Python每日一练----第35天:双向排序
【摘要】 【Python训练营】Python每日一练----第35天:双向排序
📢📢📢📣📣📣
🌻🌻🌻Hello,大家好我叫是Dream呀,一个有趣的Python博主,多多关照😜😜😜
🏅🏅🏅Python领域优质创作者,欢迎大家找我合作学习(文末有VX 想进学习交流群or学习资料 欢迎+++)
💕入门须知:这片乐园从不缺乏天才,努力才是你的最终入场券!🚀🚀🚀
💓最后,愿我们都能在看不到的地方闪闪发光,一起加油进步🍺🍺🍺
🍉🍉🍉“一万次悲伤,依然会有Dream,我一直在最温暖的地方等你”,唱的就是我!哈哈哈~🌈🌈🌈
🌟🌟🌟✨✨✨
前言:
【Python训练营】是针对Python语言学习所打造的一场刷题狂欢party! 对基础知识把握不牢固的话,欢迎参考此套课程:Python公开课 搭配使用最佳嗷~喜欢的话就抓紧订阅起来吧!🍋🍋🍋如果对学习没有自制力或者没有一起学习交流的动力,欢迎私信或者在文末添加我的VX,我会拉你进学习交流群,我们一起交流学习,报团打卡
@TOC
题目描述
输入输出样例
示例
输入
3 3
0 3
1 2
0 2
输出
3 1 2
样例说明
原数列为 (1, 2, 3)。
第 11 步后为 (3, 2, 1)。
第 22 步后为 (3, 1, 2)。
第 33 步后为 (3, 1, 2)。与第 2 步操作后相同,因为前两个数已经是降序了。
解题思路
- 首先题目中说的是要么将a1到aqi降序排列,要么将aqi到an升序排列,其中特别要注意一点,aqi在两次的排序中都会出现,这个我们要提前搞明白,不然最后总是出不来正确结果,比如我!!!一直出错,最后才发现,aqi两次排序都包含其中,真的是头大。
- 我们可以创建三个列表,其中list1用来存储我们输入的操作类型,即是升序还是降序,这个地方我们后续使用if else语句来判断;list2用来存储我们输入的参数,即对几个数进行操作;list3作为我们的目标列表,开始时需要先将其中的元素表示出来
list3 = [i for i in range(1,length+1)]
- 当降序时:list3 = sorted(list3[0:list2[i-1]],reverse=True) + list3[list2[i-1]:]
- 当升序时:list3 = list3[:list2[i-1]-1]+sorted(list3[list2[i-1]-1:]),此时千万别忘了,此时的界限是
list2[i-1]-1
,因为还是之前说的aqi在两次排序中都会出现,因为我们是根据降序来写升序的,所以在求升序时,需要额外将aqi加进去,就需要-1
最后的最后,当我们提交时他居然超时啦,啊啊啊我直接哭死啦!我是真的没办法~希望大家如果有优化方法的话,可以指导一下我,实在是搞不太懂这些东西,头都大啦。
源码分享
import os
import sys
# 请在此输入您的代码
length,num = map(int, input().split())
list1 = []
list2 = []
for i in range(num):
a,b = map(int, input().split())
list1.append(a)
list2.append(b)
list3 = [i for i in range(1,length+1)]
for i in range(1, num+1):
if list1[i-1] == 0:
list3 = sorted(list3[0:list2[i-1]],reverse=True) + list3[list2[i-1]:]
else :
list3 = list3[:list2[i-1]-1]+sorted(list3[list2[i-1]-1:])
for i in list3:
print(i,end=' ')
学习总结
🏅今天是我在Python训练营的第 1 天,希望每天都能见到最棒的你🏅
🌟
The best time to plant a tree is ten years ago, followed by now!
🌟
🌲🌲🌲 最后,作者很感谢能够阅读到这里的读者。如果看完觉得好的话,还请轻轻点一下赞或者分享给更多的人,你们的鼓励就是作者继续行文的动力。
❤️❤️❤️如果你喜欢的话,就不要吝惜你的一键三连了,我们下期再见~
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
作者其他文章
评论(0)