Ural 1998 The old Padawa

这道题是暑假多校联合CF的一道题:

做这套题的时候感觉  题目的描述特别费劲,读了半天的题才能把题目的意思弄明白;

这道题我现在终于想明白了,我来说一下题意和解题思路:

 (  1   )题意: 一个人要把n快石头举起来,这n快石头编号为1到n,并且每块石头都有自己的重量,一秒举一个石头。然后呢,在某个时刻,这个人会分心,就会使得这个时刻不能举起石头而且已经举起的石头会落下几个,落下的个数满足次规律:

                                                                                                            落下的石头重量之和大于一个常数值k,或者已经没有石头可以落下了。

那么现在题目给你:k,n,以及所有会分心的时刻(以秒为单位)

题目要你求出,把这n个石头举起来总共所需的时间。

( 2 )思路:

                     首先想到的肯定是模拟,那么具体怎么模拟呢 ??这样考虑:当第i块石头恰好被举起,此时刻这个人分心,那么已经举起的石头就是1到i,我们用s[i]表示此时刻分心掉下去的石头的个数。这让可以预先处理 s[1].....s[n]的值,然后再模拟即可。。

                   还有一个要注意的地方就是,被打扰的时刻  (这个数值可能会大于n,我一直以为是小于等于n的所以犯错误了)



 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值