0914CSP-S模拟测试赛后总结

9-16 16:03-upd:T3数据出锅,老师重测了,于是更了榜单。

名次并没有变化,但是和大佬们的差距变大了。

还是自己实力不行啊。最起码T3不是特别难想吧。

继续努力吧。

 


 

粘个榜:%%%二营长、exzkt神240-rank1 %%%kx210-rank3

%%%羊驼180-rank4 %%%cbx170-rank5 %%%脸哥160-rank6 %%%secret女神犇、神牛140-rank7

%%%Miemeng神、dybala神、逼哥130-rank9

我、xm神、动动神、奶风神100-rank12

还可以,不是吗。对于我这种场场垫底的蒟蒻来说已经是意外之喜了。

尤其是经历了好几场没有AC的尴尬后又重新有题目AC的喜悦。

然而我一共只有100分,也就是说,我T2、T3都爆零了。

可以稍微开心一下,但是绝对不能被一时的小小胜利冲昏头脑。

尤其是在你的成功在别人看来不算什么的时候。

这场考试其实本可以做的更好。没有什么考试策略之谈,只是一些押宝式的错误示范。

其实赛场上的状态与前两场都差不多。赌徒心理,几乎吧所有的时间都堆在一道题目上。

T1重构了三遍,还写了对拍、暴力。T2、T3只有一个暴力,一个骗分。

时间分配严重失衡。最起码T2、T3的暴力能打出来的对吧。不会只是爆零的成绩。

其实中间也警示过自己。20:00左右也曾放下T1去写了T2的暴力,然而TLE-0了。

但还是对T1不死心,对失败不甘心。最后几分钟也还是在调T1。

下次一定不能再押宝了。就这么决定了。

 


 

T1 A

(我的思路跟题解不大一样然而数据太水我就水过了??)

考虑如何用最少的步数从S到T。

一个很显然的性质是:应该把加法尽量放到前面。然而问题是并不知道应该放在哪。

考虑先找到一个可以将a下放的地方。

(解释一下什么叫“下放”。

假设我们找到一个位置,此时可以加b个a到达T,我们可以选择将这b个a打包扔到*b之前加,

此时我们节省了$(b-1)$步。蒟蒻就抖胆给这个操作取了个通俗的名字叫下放)

即给S一直乘b,判定到一个位置$(T-S)%a==0$。

此时可以考虑将a成组下放。

但是下放的次数会有限制,因此我们需要记录一下到达这个值*b的次数。

然而乘法的次数与最终答案的关系是一个单峰函数,下面有一个例子也能证明。

于是需要在中间更新答案,取min即可。

ps.

  yxm神问有没有反例能证明不是乘得越多越好。

  1 80 2 2正确答案是6,+2 +2 *2 *2 *2 *2 此时乘了4次。

  而我赛时对拍前的代码跑出来是7,*2 *2 *2 +2 *2 *2 *2 此时乘了5次。

T2 B

考虑dp。

posted @ 2019-09-15 11:48  hzoi_Joe  阅读(293)  评论(0编辑  收藏  举报