(每日一练65693)题目名称:坐公交

文盲老顾
WEB应用领新星创作者
博客专家认证
2023-05-11 09:31:39

公交上有N排凳子,每排有两个凳子,每一排的凳子宽度不一样。有一些内向和外向的人按照顺序上车。 外向的人(0):只会选择没人的一排坐下,如果有很多排符合要求,他会选择座位宽度最小的坐下。 内向的人(1):只会选择有人的一排坐下,如果有很多排符合要求,他会选择座位宽度最大的坐下。 数据保证存在合理。输出每个人所在的排。

输出每个人应该坐在那一排。

仔细读题,没拍有两个凳子,而不是宽度多少,就可以坐多少人,老顾开始就没仔细审题,弄错了。

题目还是很简单的,因为只能坐两个人,且性格1的人必须挨着性格0的人做,所以,用栈操作下就好。

n = int(input())
w = sorted([[i + 1,int(k)] for i,k in enumerate(input().split())],key = lambda x:x[1])
p = input()
ans,stack,m = [],[],0
for i in p:
    if i == '0':
        v = w[m][0]
        stack.append(v)
        ans.append(v)
        m += 1
    else:
        ans.append(stack.pop())
print(*ans)
...全文
136 回复 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

320

社区成员

发帖
与我相关
我的任务
社区描述
主要用于技术交流,包括但不限于 .net,mssql,js,css,python,算法,运维。也可以晒最新技术,美图,运动等。最后,如果有问题,可以提问,老顾能帮忙的会尽量帮忙哦。
前端sqlserverasp.net 技术论坛(原bbs) 北京·西城区
社区管理员
  • 文盲老顾
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧