2016.12.24【初中部 GDKOI 】模拟赛B组

来源:互联网 发布:店铺logo设计软件 编辑:程序博客网 时间:2024/06/04 01:00

总结:

这次比赛又是平平,几乎每场考试都这样,需要稍微想一下就可以想出的题目都没有做出,哎,智商~

每套比赛都有至少一道题目是在能力范围的,或许还有一道也是有可能自己在考场做出来的,即使后面的题目会越来越难,但也应该尽力去做,至少得尽全力拼搏过,一定要有耐心,沉住气,仔细思考,抓住一道自己认为可做的题目就尽力去做,尽力~

这次比赛30+70+60+30

显然每道题都只拿了部分分,第一题考场已想到大半,但却想的过于复杂,求个数竟然还用容斥原理;

第二题能拿70分就可以了,像这种题目,部分分给的很多,一般都别想太多了,想太多也没用,现在才知道正解是什么线段树+哈希,我线段树都不会打,还做啥~(今天晚上自学一下线段树)

第三题,显然的,部分分容易拿,但是正解也不难啊?为什么就不能多想呢?有时候自己随便的一个念头或许就是正解,有思路就去实现,不要怕错,不错怎么对?

第四题,这道题也比较容易,经别人一点拨就可以做出,但是那“一点拨”主要是因为“别人”已经做对了,所以一点拨自己就领悟了——对自己的智商要有信心~


T1:

·这道题灰常简单,就是找一下规律

·显然对于第i个数,如果满足条件——在排列里只这一个数最大的话,显然它的个数为i^n,但因为与满足i-1条件的个数会重复,个数便为i^n-(i-1)^n(这随便推一下就知道啊,考试根本没认真)

·最后答案因为除以m^n,这里直接除,化简一下快速幂即可。

难度:**


T3:

·60分的做法显然,暴力枚举即可

·容易想到,既然所求序列每两个数的最大公因数都为1,则这个所求序列当中所有的数都无任何相同的质因数,根据此思路,容易想到状压

·为什么状压?因为需判重

·设fi,j表示 满足欲构造的序列中 前i个数 互无最大公因数的 满足要求的 序列,且质因数状态为j的,所有绝对值的差的和

·显然,对于欲构造的每一个数,一定小于2*max{ai}-1

·什么叫做质因数状态为j?准确来说叫状压j,也就是把二进制表示的数转化成十进制储存,这里的质因数状态是指,对于当前前i个数,所拥有的所有质因数(拥有即为1,否则即为0),以类似 二进制的方式 记录每一个数所拥有的的质因数之后 再把这二进制数压成10进制储存的方式 即为状态j

·这里显然是顺推吧,也就是用fi去更新fi+1的值

·枚举第i+1位填什么数,这很容易想到,设填k,显然k满足小于2*max{ai}-1

·那么, 因为不能有重复的质因数,则需要把k分解一下看看它有什么质因数,再通过同样的方式,二进制记录,十进制状压,设分解后的值为x

·则显然x and j=0k=1 才能满足题意,则fi+1,j or x=max{fi,j+|k-a[i+1]|}

·最后分析一下时间复杂度,发现有点悬,59以下的质因数有16个,2^16-1=65535,再乘上个5800=380103000,可以卡过,呵呵~~

·但,是否能优化呢?

·好吧,我觉得好像不能优化了

·那么求出f之后可以再储存两个数组分别存对应的求fi,j时的jk,结果倒推即可


T4:

·这题实际上也比较简单

·下面简要分析一下

·如果暴力枚举,可以水30,那么想想优化

·注意,题目给了2000ms,且m,n<=300,一般来说,出题人都会把m,n的取值范围弄成一些更“整”的数,这里弄成300,显然是有意卡时间

·那么想想O()是否可行呢?

·一个比较美好的想法,枚举矩阵的上下边界,即最上到哪一行,最下到哪一行,然后考虑,是否对于m列能一次扫过并求出所有值对答案的贡献呢?

·注意,因为当前行以确定,每一列也应该是一个以确定的数,即这一列的最小值,其它值不可能对答案有贡献

·即为我们是扫过一行数,那么想想队列?

·显然,对于当前的第j列,它对答案的贡献显然是它最左边能到达的个数乘上最右边能达到的个数(每个个数都加上自己),那么,我们可以考虑两种方法:

·直接暴力,可以水过(我™...)

·可用队列解决,好吧,在看题解时,我承认我一直不知道什么叫做单调队列,直到靠着自己智障的想法做出后问别人之后才知道什么叫做单调队列,然后发现自己打的是单调栈

·解释一下,单调栈嘛,就是单调啊,很单调啊,没什么特殊的,一直递增或递减啊,与单调队列相比不过就是出栈的先后顺序罢了

·设Aj表示在枚举的行的范围内,j列上的最小值

·必然的,如果Aj>Aj-1,则可将Aj加入单调栈,并维护一下它的左边界以及所在位置(显然一开始的左边界为1)

·如果Aj<Aj-1,则显然一直到第一个满足条件Ak<Aj前的前k+1个数对答案的贡献都可算出,贡献=左边界*(j-所在位置)

·并把第j个数的左边界赋值为刚刚对答案做出贡献的所有数的左边界的和,这个性质的正确性显然

·最后,对于栈里如果还有存在的数,则需要再加一遍

1 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 八个月的宝宝拉肚子怎么办 八个月发烧38度怎么办 孩子特别调皮好动该怎么办 孩子有好动症该怎么办 在幼儿园好动的孩子该怎么办 18个月宝宝上火怎么办 打孩子越打上瘾怎么办 八个月不想要了怎么办 胎儿心脏畸形肺动脉瓣闭锁怎么办 小孩爱动怎么办补什么 初中孩子下午上课总犯困怎么办 孩子上课精神不集中怎么办 孩子玩兴奋了就打人怎么办 婴儿兴奋白天不睡觉怎么办 小孩读书精神不集中怎么办 小孩上课精神不集中怎么办 小孩学习精神不集中怎么办 孩子暑假天天看电视不出门怎么办 七个月宝宝缺铁怎么办 天天运动为什么还便秘怎么办 小孩学习注意力不集中怎么办 8个月宝贝太好动怎么办 学生在校受伤家长该怎么办 多动症小孩爱动手指怎么办 孩子大了不听话该怎么办 流产后吹了风怎么办 怀孕1周内喝酒了怎么办 怀孕6周喝酒了怎么办 怀孕后喝了酒怎么办 不知道怀孕喝酒了怎么办 不知道怀孕了喝酒了怎么办 怀孕5天喝酒了怎么办 打孩子耳光后脸肿了怎么办 老师说上课不专心怎么办 孩子不专心好动马虎怎么办 学生上课不认真听讲怎么办 一年级孩子上课不注意听讲怎么办 一年级孩子上课说话不听课怎么办 一年级孩子上课不听课怎么办 小学一年级学生上课不专心怎么办? 小孩听课注意力不集中怎么办