摘要: 这是一道裸的树链剖分,但是15年HA好像还没有普及这个,连wmd神犇也是写的 O( n√n ) 的算法,还因为栈空间被卡到50分。 但是不得不说HAOI2015的难度真的非常高,至少对我来说,而wmd即使这样也依然拿到了250分,实际上他应得350分,%%%。 子树修改是一般的板子题不会有的操作,还 阅读全文
posted @ 2018-04-15 20:33 qjs12 阅读(97) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2018-04-15 20:24 qjs12 阅读(1) 评论(0) 推荐(0) 编辑
摘要: 这道题我也是用线段树做的,也是区间覆盖。 比较好想首先读入所有输入,倒序处理,对于一张海报,查询其对应区间有没有被完全覆盖,完全覆盖表示后面贴的那些海报会将这张海报完全盖住,否则的话,这张海报就会被看到,并且将其所对应的区间在线段树上进行覆盖操作。 n比较大达到了1e7,按理说线段树应该过不了,但是 阅读全文
posted @ 2018-04-15 19:54 qjs12 阅读(111) 评论(0) 推荐(0) 编辑
摘要: 又是一道贪心的题目,我以为这题我高一省选前也做了,不过查一下提交记录好像没有,那时候还是太懒了啊,其实还是有不少题目当时我就应该去做的。 现在也懒啊,现在还笨。 网上有一份比较好的题解,也有图片说明,那份题解是按左端点排序,按照每次尽量往右放的思路覆盖,同时他也举出了这样做的反例,所以他加了一步,当 阅读全文
posted @ 2018-04-15 19:44 qjs12 阅读(94) 评论(0) 推荐(0) 编辑
摘要: 这道题目在做的时候是一道让我比较头疼的题目,记得那时候总是整理完思路而不想写程序,很多次刚开始写觉得麻烦就又放弃了。不过那天下午还是逼着自己怎么也要把这题做了。 题目要求长度大于k的最靠左的一段连续空白。 线段树应该是人人都能想到的解决这道题的数据结构。 接下来我们应当考虑怎么分,这么合。 先考虑分 阅读全文
posted @ 2018-04-15 19:33 qjs12 阅读(142) 评论(0) 推荐(0) 编辑
摘要: 这题让我知道了一种从来没接触过的酷算法——折半搜索! 还让我知道了一个大佬——GTH! 还是一个省的,NOIP D1 T1 爆零都比我考的高......虽然我也只有5分,但我是没推出来,人家推出来了被评测坑了,不能比...... 这年头,OI界这么多女装大佬,而真的女生又这么爷们er么...... 阅读全文
posted @ 2018-04-15 18:40 qjs12 阅读(111) 评论(0) 推荐(0) 编辑
摘要: 贪心,尽量捡便宜的买,反正是糊弄更多的老百姓开心。 阅读全文
posted @ 2018-04-15 18:19 qjs12 阅读(76) 评论(0) 推荐(0) 编辑
摘要: 想要继续往前的时候想想还有没有时间赶回来? 这是训练,不是人生。 阅读全文
posted @ 2018-04-15 18:12 qjs12 阅读(88) 评论(0) 推荐(0) 编辑
摘要: 70分蛮好想的,因该是用组合的知识理解吧,好像跟寒假学的生成函数有点关系?不过有关系也是最简单的。 然而这题剩下的30分真是......为什么我就没想到暴力算那105,之后快速幂求剩下的...... 还是东西学的有点死,不过比起半年前真的好多了。 阅读全文
posted @ 2018-04-15 18:05 qjs12 阅读(72) 评论(0) 推荐(0) 编辑
摘要: 这道题目我是80分,T了两个点,因为最后的每次路径统计我用的是 O( n2 ) 的暴力统计,好像即使 O ( n ) 我的算法理论也跑不过,原本以为只能拿60,结果只T了两个点,弄得我不想改了,改的话应该用一个类似树规,记忆化的方式吧。 这题依旧考最短路树,我的方法是暴力以每个点为起点跑dijstr 阅读全文
posted @ 2018-04-15 17:58 qjs12 阅读(81) 评论(0) 推荐(0) 编辑
摘要: 这题我考场上绝对打30分暴力,有时间的话会再想想60分。 一年前我题都看不懂,一个月前能五分钟码完30分暴力,这也算进步了吧。 首先根据题目的公式,可以发现,只要质因子不是2,每Φ一次,生成一个偶数 ( p-1 ) ,而这个偶数可以分解成2的次幂乘上一个质数。 而容易得到 Φ(2n) = n,因此只 阅读全文
posted @ 2018-04-15 17:37 qjs12 阅读(97) 评论(0) 推荐(0) 编辑
摘要: 去年这时候我写过这题了,这估计是去年省选前我唯一自己做出来的省选题。 然而我还记得去年那天晚上,我为了把这题改成滚动数组调了有一个小时吧,然而并没有写出来,还认为这题无法用滚动数组。 然而今年这题的确用滚动数组一眼秒掉了。 这也算进步了吧。 然而这点进步够吗。 f[i][j] 表示第 i 首歌能达到 阅读全文
posted @ 2018-04-15 16:06 qjs12 阅读(122) 评论(0) 推荐(0) 编辑
摘要: 一个方案合法的充要条件是编号小于等于i的人至少有i个。 然后就DP了...... 我看的神犇popoqqq的题解,哇,我居然记住了他的名字。 设 f[i][j] 表示有 j 个人编号小于等于 i 的方案数。 然后是很长的转移。 还是那句话啊,是能理解,但是考场上我总不能拿着一篇题解来理解吧..... 阅读全文
posted @ 2018-04-15 15:58 qjs12 阅读(87) 评论(0) 推荐(0) 编辑
摘要: 莫比乌斯反演+容斥原理。 首先对于m,n,设 f( k,m,n ) 为满足 1<=x<=m,1<=y<=n 且 gcd( x,y ) == k 的数对个数。 那么对因每一个询问 ans = f( k,b,d ) - f( k,a-1,d ) - f( k,b,c-1 ) + f( k,a-1,c-1 阅读全文
posted @ 2018-04-15 15:45 qjs12 阅读(100) 评论(0) 推荐(0) 编辑
摘要: 我一开始的思路是最长上升序列...... 我真的没见过这种解题的方法...... 我以前从没用过pair...... 所以我蛮想知道官方题解是啥...... 这题按名次DP。 s[pair[l,r]] 表示排名在 [l,r] 内的人数个数。 f[i] 表示排名前 i 的最多的说真话的人数。 对于 f 阅读全文
posted @ 2018-04-15 15:11 qjs12 阅读(77) 评论(0) 推荐(0) 编辑
摘要: 只有四个向量有意义,(a,b),(a,-b),(b,a),(b,-a)。 很自然地列出式子。 A(a,b) + B(a,-b) + C(b,a) + D(b,-a) = (P,Q) (A+B)a + (C+D)b = P (C -D)a + (A- B)b = Q 上扩欧。 x1 = A + B,y 阅读全文
posted @ 2018-04-15 14:59 qjs12 阅读(122) 评论(0) 推荐(0) 编辑
摘要: 网上对这题一致好评,然而像我这种没见过世面的,不知道什么是好题,什么题不好...... 数据会出现环形依赖关系,环形里面的软件选一个就要全选,相当于一件物品。 所以先跑Tarjan,把强连通分量缩成一个点,之后按强连通分量建图,原图 u->v,新边 scc[v]->scc[u],表示安装scc[v] 阅读全文
posted @ 2018-04-15 14:44 qjs12 阅读(145) 评论(0) 推荐(0) 编辑
摘要: 我不要面子的,这题题面我看了好久都没看懂。 首先所有煤矿的产煤都是要运送给两个发电站的,原发电A站须b吨,剩下的所有煤要全部运给新发电站。 考虑枚举新厂址B,计算在每个厂制运煤的最小总代价,取最优解。 现在问题确定厂址B后,如何求最小代价。 因为煤是要全部运出,且从煤矿 i 运至厂 A (X)元,运 阅读全文
posted @ 2018-04-15 14:23 qjs12 阅读(96) 评论(0) 推荐(0) 编辑
摘要: 可重集全排列公式。 从首位开始向后扫,对于第 i 位的数字 num[i],假设小于 num[i] 的数有 k 个,那么可以在第 i 位任选其中的一个,剩下的每一位可以随便取,对应的排列数 k*Π(sum-(j-i)) (i<j<=n),sum是所有可供使用的数字的数量,又因为有元素重复使用,再依次除 阅读全文
posted @ 2018-04-15 14:08 qjs12 阅读(101) 评论(0) 推荐(0) 编辑