乘坐保密电梯

564 篇文章

已下架不支持订阅

470 篇文章

已下架不支持订阅

题目解析

我的解题思路如下:

由于题目说

给定一个数字序列,每次根据序列中的数字n,上升n层或者下降n层,前后两次的方向必须相反,规定首次的方向向上,自行组织序列的顺序按规定操作到达指定楼层

因此,我们可以认为要从数字序列中选出两组数,一组是上升,一组是下降

假设数字序列总个数n,期望楼层是t

  • 如果n是偶数,则上升组要选n/2个,其余的都是下降组
  • 如果n是奇数,则上升组要选n/2+1个,其余的都是下降组

假设数字序列所有元素之和是 sum,而上升组的和upSum,那么下降组的和就是sum - upSum,

如果 upSum - (sum - upSum) <= t,那么当前分组就是一个可能解,而其中sum,t都是已知的,因此可以转化为如下:

upSum  <= (sum + t) / 2

即,我们要从给定的数字序列中选择固定数量(n/2或者n/2+1)个,让他的和小于且最接近或等于 (sum + t) / 2。

本题数量级不大,可以当成组

已下架不支持订阅

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员阿甘

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值