摘要: 题意 给定数组$a(\left| a \right|\leq 10^5)$和整数$k(2\leq k \leq 100)$,问满足一下条件的二元组$$的数目: $1 \leq i using namespace std; typedef long long ll; const int maxn=1e 阅读全文
posted @ 2019-10-27 12:11 _Backl1ght 阅读(509) 评论(0) 推荐(0) 编辑
摘要: 题意 给定整数c和数组a,b,$a_i$表示通过爬楼梯的方法从第$i$层到$i+1$层需要的时间,$b_i$表示通过坐电梯的方法从第$i$层到$i+1$层需要的时间,坐电梯前需要等c单位时间。即对于$i using namespace std; typedef long long ll; const 阅读全文
posted @ 2019-10-23 13:16 _Backl1ght 阅读(433) 评论(0) 推荐(0) 编辑
摘要: Google Kick Start Round G 2019 Book Reading 暴力,没啥好说的 cpp include using namespace std; typedef long long ll; const int maxn=1e5+5; int n,m,q,p[maxn],r[ 阅读全文
posted @ 2019-10-20 20:24 _Backl1ght 阅读(253) 评论(0) 推荐(0) 编辑
摘要: 解题思路: fail树上用权值线段树合并求right/endpos集合,再用倍增找到待查询串对应节点,然后权值线段树求第k大。 cpp include using namespace std; typedef long long ll; const int maxn=1e5+5; int n,q; 阅读全文
posted @ 2019-09-25 13:32 _Backl1ght 阅读(221) 评论(0) 推荐(0) 编辑
摘要: 题意 给定长度n和m个限制(l,r),每一个限制的意义是$a_l \times a_{l+1} \times ... a_r = 0 \quad mod\ 9$。 问有多少个满足所有条件且长度为n的10进制数(可以包含前导0) 解题思路 看到可以包含前导零的时候就想到了数位DP,但是比赛的时候没想出 阅读全文
posted @ 2019-09-02 10:33 _Backl1ght 阅读(372) 评论(0) 推荐(0) 编辑
摘要: 题意 给定一个长度为n字符串,字符集大小为m(1 using namespace std; typedef long long ll; const int maxn=1e6+5; const int mod=1e9+7; struct Suffix_Automaton{ struct state{ 阅读全文
posted @ 2019-09-02 02:57 _Backl1ght 阅读(240) 评论(0) 推荐(0) 编辑
摘要: 题意 树链上带修改第K大 思路 树链剖分+线段树套平衡树+二分 具体就是先树剖把树映射到区间,然后对区间建线段树,线段树的每一个节点是一颗权值平衡树,修改就是在线段树上跑一遍,对于经过的线段树节点,其实就是平衡树,做一次删除和一次添加。查询就是二分最终的答案ans,然后计算链上大于ans的节点有多少 阅读全文
posted @ 2019-08-28 01:30 _Backl1ght 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 题意 强制在线的树链上第K小 解题思路 树链上第k大问题很容易能想到树链剖分和主席树。如果我们对树深度优先遍历一遍,每遍历到一个结点u就在它父亲结点的基础上更新,那么T[u]这一棵树就维护了从u到根节点这一条链上的信息,再结合树的性质,从u到v这一条链上的信息就可以由u,v,lca(u,v),fa[ 阅读全文
posted @ 2019-08-27 13:48 _Backl1ght 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 题意 给定n个模式串,有m个询问,每次询问第X个模式串在第Y个模中出现了多少次 解题思路 以fail树相反的方向建一棵树T,问题转化为X的子树中有多少个y的终止节点。跑出T的dfs序,X的子树就可以表示为一段区间,然后对trie跑一遍dfs,每进入一个点就把dfs序列上对应的位置+1,离开一个点就把 阅读全文
posted @ 2019-08-27 02:15 _Backl1ght 阅读(134) 评论(0) 推荐(0) 编辑
摘要: 题意 给定一个正整数N和n个模式串,问不大于N的数字中有多少个不包含任意模式串,输出对$1e^9+7$取模后的答案。 解题思路 把所有模式串都加入AC自动机,然后跑数位DP就好了。需要注意的是,这题需要考虑前导0的影响。举个栗子,对于N=2333,在处理数字233时其实处理的是"0233",这时如果 阅读全文
posted @ 2019-08-26 15:04 _Backl1ght 阅读(452) 评论(0) 推荐(0) 编辑