NOIP模拟赛2021/11/17

比赛时间安排

8.30-8.45
t1刚开始平平无奇,然后。。。n维?!真的想像不出来,连手推都做不到,麻了
t2感觉是一道很复杂的dp,不太可写,暴力的话20感觉也不行,我想的是阶乘的复杂度,所以这题先过吧
t3是一个图论,似乎,感觉60分的n^2可以写,每次都记录一下路径就行了
t4数论题吧,看着非常奇怪,感觉是一道要找规律的题

8.45-9.00
写t1的特判
m=2的很简单,是平常的数学题,但是m=3的就比较。。不太好写了。手画图画不出来啊!!不知道怎么切是最优的,或者我感觉是最优的了,打了特判(然而判错了o(╥﹏╥)o)

9.00-10.30
t3因为有很明确的思路,先去写t3了
首先,我想到最优排列的那道题,但是貌似不对,必须一个一个点找,然后又想到孤岛,好像是建了一个虚点,但是也不对,因为我需要求每个点的距离,但是那道题只需要求所有点的最短距离,所以pass。最后只能n边dij去找每个点到1,n的最短路(因为如果直接1到n,那么无法保证d-1的字典序最大(是我菜了)),每次用set记录路径,(因为赋值方便),然后建边也用vector,在跑之前sort一下,自认为没问题了,小样例过了,结果大样例过不去,调了半天没什么结果,放弃了,先这样吧,因为耗的时间太久了

10.30-11,20
看了看t2,觉得这20分给出来,肯定是让拿的,所以暴力肯定有别的方法。20想到2^20,所以就是枚举选还是不选?!这样好像确实可以,因为确定要写哪些题之后,只需要判断合法不合法就行了,直接模拟一下,看能不能在之前 写完就ok了,答案也直接在dfs的时候就统计出来了,写完之后发现样例都过了,想测一下下发样例,结果发现太大了,放弃

11.20-12.00
t4我好好看了一遍,发现的确是在找规律
一个显然的结论,奇数的f[i]都是1
然后接着来想偶数的情况
举了几个例子,发现如果这个偶数/2是个奇数,那么答案就是2,因为这个时候先取2个,那如果对手取1个,到自己手上就是奇数了,如果对手选了2,那么因为有奇数个2,就类似于奇数的情况了
然后以这个为基础,我推了几个例子,成功把样例推对了,然后不想推了,准备打表(还不确定打表是否正确)
然后打表惊奇的发现,2的幂都是他本身,觉得又是一个规律,然后再仔细看一看,发现f[i]是使i为奇数的一个最大的除数,而且都是2的幂,于是i/f[i]的值,我认为,就是让i不断/2,直到为奇数,于是我打表看了一下,确实如此,虽然不知道为什么,但是就是有这个规律!好!写上去了,50分有了

12.00-12.45
t3再去debug,因为其他写不动了,我再把代码读了几遍,觉得会不会是剪枝有问题,于是把剪枝去了,结果它。。。。t飞了,30秒,答案还是不对,我就又把剪枝加上了,然后漫长的打表找错,发现记录路径的set没清空!!!清空之后还是不对呢,于是把剪枝去了,就终于对了,正确性没问题,但是。。。太慢了,直接t飞,想着怎么进行优化,但是感觉哪里都不能删,崩了,想拿60分,但是估计只有20了

赛后总结反思

  1. t2和之前的一道贪心题非常像,但是没有想到贪心,这方面训练不够,最近很多到贪心题都写不出来
  2. dp能力依然上不去,t2其实可以用dp写一下的,但是我看出来能n^2dp ,但是尝试了,不会写
  3. t3求字典序最小,60分可以通过一点一点比较来搞,找最短路然后如果有相同的那么就比较,这个思想要有
  4. t4的找规律比之前有进步

与正解的差距

t2

感觉被dp冲昏了头,贪心思路很简单,和智力大冲浪一样,只需要进行“缩点”就行了,同时用并查集维护(这个想法见过很多回了)

t3

路径具有唯一性,可以直接上最短路径树,然后就是区间修改,单点查询。对最短路径树太不熟悉了, 甚至含义都不明确,没想到这里。
还有就是判断字典序最小的方法,只需要记录他的前一个点就好了,不用倒着来循环

总结到此为止,明天转入复习!!noip加油!!!!!!!!!!!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值