小美的排列构造 python

'''
这道题的思路就是从一个1到n的数组中,重新排列,数字组间和之差最小。最理想的方案就是每次只取数组中的最大值和最小值.
最终就会得到这样的一个数组[n,1, n-1,2, n-2,3, ..., n//2],然后将数组逆序转换成字符串
'''

n = int(input())
res = [0 for i in range(n)]
max_n = n
min_n = 1
for i in range(0, n, 2):
    res[i] = max_n
    max_n -= 1

for i in range(1, n, 2):
    res[i] = min_n
    min_n += 1
out = " ".join([str(r) for r in res[::-1]])
print(out)

题目链接:https://www.nowcoder.com/questionTerminal/bd44aa9a468144b6b53391ae56f2d730

全部评论

相关推荐

不愿透露姓名的神秘牛友
07-09 11:30
找工作7个月,投了7000封,3段世界五百强实习,才有一个offer,牛油们肯定比我强吧
码农索隆:不对不对不对,实习经历这么厉害,简历也没少投,问题出在哪呢
点赞 评论 收藏
分享
小叮当411:应该是1-3个月吧
点赞 评论 收藏
分享
仁者伍敌:难怪小公司那么挑剔,让你们这些大佬把位置拿了
点赞 评论 收藏
分享
流浪的神仙:无恶意,算法一般好像都得9硕才能干算法太卷啦
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务