您的位置:首页 > 其它

CQOI2016游记

2016-04-10 23:06 204 查看
前情提要:我是丝薄,noip405的丝薄,所以这次省选特别虚

day0

上午随便切了两个题,背了下版。

下午看考场,环境还好,键盘也不错,评测姬非常好,就是人和人之间有点近,我回去买了耳塞(虽然并没有用上

晚上回去一边看板一边纠结,想自己万一进不了队怎么办,熬到十一点过终于睡了。我心态果然还是不够好啊,应该什么都不想的。

day1

上午六点半就起来了,七点到学校,开车过去七点四十就到了重邮。

然后老师们讲了下比赛的注意事项,居然要多存盘以防别人关错电脑233

然后就开始考试了。

一开始考试我就惊了,T1裸的分治最小割啊,T3数位DP,我一定能想出来!T2倒是没什么思路,但是暴力有30分!妈妈我省选一场能拿230!!

然后我花40分钟默写了一下分治最小割。然后我花25分钟写了写数位DP,然后还有三个多小时,实在是太爽了。这个数位DP还是比较好想的。然后我开始想T2,这个k远点对怎么搞呢?答案在凸包上面?显然是错的啊。所以卡壳不行了。K-D树?也是可以找最远的,不依赖凸包,但是第k个怎么做啊。然后我又脑洞了一下分治,还是没什么思路。只好写了个暴力。

然后我开始对拍我的T1T3,然后发现T3的答案增长得很慢,然后就仔细看程序,发现有个中间变量忘开long long了,然后改了之后就正常了。也是运气好,要不然这题就爆炸了。

有惊无险地拍完后面两题,然后我检查了一下文件名,数组大小,把I64d改成了lld,然后忐忑不安地等了2分钟,然后交了。

上午精神还不错,下午整个人就颓了(感觉身体被掏空

晚上看了下数学和数据结构的板,然后没看trie(flag

纠结到11点过,终于睡了

day2

上午六点半就起来了,七点到学校,开车过去七点四十就到了重邮。(怎么一样的

玩了一会然后就开始考试了。

第一题我一看,RSA吗?直接上pollard_rho模拟一下就A了。

第二题我一看,哎呦我去,题目真长,等会看。

第三题我一看,出题人怎么这么喜欢第k大啊,算了感觉还可以想的样子。

然后我开始模拟第一题,随便写了个板,然后过了样例。我就放了,等下对拍。

然后我开始想第三题,感觉有点DP的味道,但是不知道怎么搞。然后我开始怂了,想先写个搜索放放。然后安慰自己:省选390也可以进队啊(flag

然后我写完最naive的搜索以后我发现了,要把128内的质数打出来,随便搞搞这个搞出来这个质数最多能被选多少次,然后枚举一个要选择的最大的质数,这样就可以枚举这个质数被选次数内的比这个质数小的所有质数了。就是个集合的无序拆分。

写完后发现只能过10^14左右的数据。10^18的伪光滑数有1.2亿个,很不好搞。

然后我跑去看第二题了,因为题目描述一开始不清楚所以我没想出来,后面更正了题意后还是没想出来,无奈又写了个30分暴力。

回来看第三题,现在时间还很充足,我又想到,10^14的第800000个伪光滑数一定比10^15的第800000个伪光滑数小,这样假设我们知道10^14的第800000个伪光滑数,这个数可以拿来剪枝,然后10^15的第800000个伪光滑数算起来就很快了,可以拿去剪10^16的第800000个伪光滑数,这题就做完了。

然后我又有230辣!当时我觉得自己稳了(flag

毕竟CQ是弱省啊,在我看来省选460已经很高了。

然后就是惯例地检查了。

然后等成绩,听说巴蜀的AK了两个,然后我就慌了,觉得460这个分并不高。无心吃东西,反正发呆,终于等来了成绩,我压线进队了,但是geng4512因为数组开大了MLE了所以挂了。这样我们学校有3个进队。感觉自己进队了虽然开心,但是geng4512挂了也很可惜,所以也就没那么开心了。而且自己也是压线进队,有450分,day1T1不知道为什么写挂了一个点。然后就是心有余悸了,要是写挂得多一点,或者我DAY1T3没检查出来,或者我DAY2T3没想出剪枝,我就挂了。主要是noip太渣了,md斗地主,md跳房子。

后来回想我省选写了啥,写了三个模板三个搜索,真是毫无技术性可言啊。bless all.

然后我来口胡一下每个题的题解吧,题目和数据以后再补,今天先睡觉了

day1

t1 不同的最小割

分治+最小割 参见ZJOI不知道哪一年(2011? 最小割

或者你会GH TREE可以直接敲板子

据说数据很水,暴力最大流80分

t2 k远点对

堆+凸包+分治+kdtree(我并不会不要问我去问claris

不要用卡壳和三分做,数据很水,所以有人AC,然而这是可以卡掉的(我并不会卡不要问我去问claris

t3 电话号码

数位dp,设过程dfs(pos,p,f4,f8,flag,lim,zero)表示dp到pos(从低到高dp),上一个数字是p,是否有4,是否有8,是否有连续的三个一样的数,是否取满,是否有前导零的状态。然后当pos=0的时候返回flag,否则按情况转移。

day2

t1 密钥破解

用pollard_rho把N分解成p,q,然后算r,然后exgcd算d,然后快速幂算答案

t2 路由表

可持久化trie或者trie上的dp(然而我太丝薄并不会

t3 伪光滑数

可并堆+dp(然而我太丝薄并不会

或者打阈值表剪枝搜索

题目在bzoj上可以交。没有题面,题面在uoj群或者codevs群看。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  CQOI2016