摘要: 打铁了QAQ阅读全文
posted @ 2019-05-08 18:24 ✡smy✡ 阅读(61) 评论(3) 编辑
摘要: QWQWQ阅读全文
posted @ 2019-04-25 20:33 ✡smy✡ 阅读(69) 评论(2) 编辑
摘要: 这,就是我的全力吗?阅读全文
posted @ 2019-04-04 17:28 ✡smy✡ 阅读(424) 评论(5) 编辑
摘要: 说起GG,我就想起被孙悟空吊打过的妖怪全都GG了,今年下半年,,,算了直接开花吧阅读全文
posted @ 2019-01-22 21:50 ✡smy✡ 阅读(595) 评论(13) 编辑
该文被密码保护。
posted @ 2018-08-03 21:30 ✡smy✡ 阅读(65) 评论(4) 编辑
摘要: "传送门" 你个好好的省选怎么可以出CF原题啊,你们这个题害人不浅啊,这样子出题像极了cxk,说到cxk,我又想起了他是NBA形象大使,跟我是西游文化大使一样一样的,今年下半年... 别说了,~~jinsaisannian~~ 因为线段树树高是$logn$层的,所以第一问可以直接暴力做,后面记这个权阅读全文
posted @ 2019-05-09 22:26 ✡smy✡ 阅读(16) 评论(0) 编辑
摘要: "传送门" 考虑子串以及出现个数,可以发现SAM可以快速知道每种子串的出现次数,即所在状态的$endpos$集合大小,然后一个状态对应的子串长度是一段连续区间,所以可以对每个状态差分一下,就能统计答案了 cpp include include include include include incl阅读全文
posted @ 2019-05-09 21:43 ✡smy✡ 阅读(5) 评论(0) 编辑
摘要: "传送门" 要求经过路径汉堡的点和可乐的点个数之差绝对值$\le k$,所以可以考虑dp,$f_{i,j}$表示到点$i$,汉堡的点个数减可乐的点的个数为$j$的最短距离,注意一下负下标处理,然后跑个dij就完事了 cpp include include include include includ阅读全文
posted @ 2019-05-09 21:39 ✡smy✡ 阅读(5) 评论(0) 编辑
摘要: "传送门" ~~你写题像CXK~~ 因为要求没有那样的一堆人在~~闻鸡起舞~~,所以可以考虑容斥,枚举一定有$i$堆人在~~闻鸡起舞~~,然后其他位置随便放,容斥系数为$( 1)^i$.然后注意到因为一堆人一定是依次唱,跳,rap,篮球的,这些人出现的位置没有交,如果设$f_i$为随便放$i$人的方阅读全文
posted @ 2019-05-09 21:35 ✡smy✡ 阅读(11) 评论(0) 编辑
摘要: "传送门" 首先,排名系统,一看就知道是~~原题~~,可以上平衡树来维护 然后考虑一种比较朴素的想法,因为我们要知道排名在一个人前面的人数,也就是AC数比他多的人数+AC数一样并且罚时少的人数,所以考虑维护那两个东西.AC数更多的人数显然可以直接上树状数组.后者的话可以对每一种AC数开值域线段树,存阅读全文
posted @ 2019-05-09 21:22 ✡smy✡ 阅读(5) 评论(0) 编辑
摘要: "传送门" ~~所以这题和字符串有什么关系~~ 首先可以写出dp,$f_{i,j}$表示前$i$位,最后一个字符是$j$的方案,转移枚举下一位,只要不在大串中前后相邻即可.然后矩乘优化即可 cpp // luogu judger enable o2 include include include i阅读全文
posted @ 2019-05-09 21:21 ✡smy✡ 阅读(6) 评论(0) 编辑
摘要: 打铁了QAQ阅读全文
posted @ 2019-05-08 18:24 ✡smy✡ 阅读(61) 评论(3) 编辑
摘要: "传送门" 显然的想法是对每个点求出能通过某种语言到的点个数,然后加起来$/2$就是答案.每次加入一条路径,就可以更新路径上所有点到达其他点的状态.那个我们用线段树维护,每次对路径上所有点的线段树上该路径对应的dfn区间覆盖(用树剖处理),最后统计每个线段树上有值的位置个数 注意每次是对一条路径上的阅读全文
posted @ 2019-05-05 16:07 ✡smy✡ 阅读(12) 评论(2) 编辑
摘要: "传送门" 注意到答案为这个基环树直径$/2$ 因为是基环树,所以考虑把环拎出来.如果直径不过环上的边,那么可以在环上每个点下挂的子树内$dfs$求得.然后如果过环上的边,那么环上的部分也是一条链,考虑拆环为链,现在问题是一条链,每个点往下延伸若干长度,问最远的距离.每个点往下最长的长度可以随便预处阅读全文
posted @ 2019-05-02 15:33 ✡smy✡ 阅读(9) 评论(0) 编辑
摘要: "传送门" 注意到$N\ O\ I$三个字母都可以从左到右拆成三部分,即$N=$一个矩形+一堆矩形+一个矩形,$O=$一条+两条横的+一条,$I=$两条横的+一个矩形+两条横的,所以可以拆成$13$个部分转移($9$个字母部分,$4$个空白部分) 设$f_{i,j,l,r}$表示第$i$列,放的是字阅读全文
posted @ 2019-05-02 15:21 ✡smy✡ 阅读(4) 评论(0) 编辑