本文共 575 字,大约阅读时间需要 1 分钟。
暑期训练1
今天是假期训练的第一天,第一次参加训练的我们显得有点懵懂。但是既然来了,就要按要求来做。每天固定的任务是看算法竞赛进阶指南,晚上时长两个小时的个人训练赛。在今天的训练赛中看到b题,本以为是一道签到题,按着试一试的态度结构体加排序果然卡到第六个数据wa,当时想起来是搜索了,但是自己觉得搜索有点麻烦就没搞掉。跟着榜打E题,一个水题,就是排序问题。C题也是一道水题,就是有一个隐藏的判断条件即a[i]>a[i-1]+1&&a[i]>a[i+1]+1 来保证山峰减掉一还是山峰。
在白天主要是学习了位运算、枚举、递推和递归。在位运算中一开始不是很理解异或、与、或的运算,从网上现找的。在实现a的b次方和a*b对p取模的时候,用位运算明显的时间复杂度要小。最短Hamilton路径,也正好复习了一下dp的用法,位运算去判断被经过点的状态是否为1,对于经过点的状态j位应该为0,也就是i^(1<<j),k是其中任意为1的位置,加上w[k][j]与f[i][j]取最小值即可。在进行身高差的题目时也可以用前缀和的方法。
训练刚刚开始,在训练中暴露的问题越多越能够提高。另外,警戒自己不能去ctrl代码在比赛期间,赛后一定要补题,认真的看完弄懂这本书,相信收获会很大。对于那些不会的知识点,每天都去想一想总有一天会看透的,还有就是要多敲代码,多敲几遍。
转载地址:http://vfqwi.baihongyu.com/