Loading

摘要: 思路: 考虑一个数$a_i$现在所处的位置$cur$和原本应该处于的位置$pos$之间的关系,既然$[cur,pos]$的位置$a_i$都不能插入,那么就意味着,$[cur,pos]$这些位置的数在哈希的插入序列中必须在当前这个数$a_i$的前面。 一些数在序列中的位置相对于其他一些数有要求,那么我 阅读全文
posted @ 2021-10-06 09:29 x7x7g7c7 阅读(71) 评论(0) 推荐(0)
摘要: 题意: 给定一个长度为$n$的序列,现在要求你对其进行染色,\(r\ or\ b\),两个颜色,要求染完色的序列,在其中选择尽量多对的下标$1\le i\le j\le n$,使得序列$[i,j]$中的$r$个数为奇数。 如果最多的答案对数对应了多种染色方案,如果不超过$100$个,请全部输出,否则 阅读全文
posted @ 2021-09-13 15:12 x7x7g7c7 阅读(312) 评论(0) 推荐(1)
摘要: 题意: 一个长度为$n,n\le500000$的数列,其中的元素$0\le a_i\le500000$,现在让你找到一个最小的正整数$x$使得,$i\in[1,n],a_i%x$的值,全部唯一。 思路: 假如有两个位置$i < j$,\(a_i \%x = a_j\%x\),即$|a_i-a_j|% 阅读全文
posted @ 2021-09-10 21:30 x7x7g7c7 阅读(91) 评论(0) 推荐(0)
摘要: 思路: 显然对于位置$i$我们要考虑的是$i+1...n$的限制,所以我们倒序考虑,对于第$n$个串,它的答案不受其他串影响,所以就是前$n$个串首字符的种类数即可,这样最优的包含所有字符串的至少长度为$1$的前缀。 假设当前位置为$i$,我们要考虑的是当前的这个串$s_i$的每个前缀会对其他的字符 阅读全文
posted @ 2021-09-07 20:45 x7x7g7c7 阅读(72) 评论(0) 推荐(0)
摘要: 提前封装好双模数哈希,后续计算写起来会简便一些。 哈希初始化,底数预处理,取子串对齐后相减等操作保持不变。 struct Hash {//一个用结构体封装的hash双模数哈希 int x,y,MOD1 = 1000000007,MOD2 = 1000000009; Hash(){} Hash(int 阅读全文
posted @ 2021-09-07 19:58 x7x7g7c7 阅读(459) 评论(0) 推荐(0)
摘要: A - Domino Disaster 思路: 碰到$U$输出$D$,$L,R$就输出$L,R$ B - MEXor Mixup 思路: 做个前缀异或和,细节判断一下几种情况即可,注意求出来的答案如果$=a$,那么不能用这个数,否则$MEX$就不是$a$,给前缀和和$b$加个值,用这个两个数即可完成 阅读全文
posted @ 2021-09-06 21:53 x7x7g7c7 阅读(63) 评论(0) 推荐(0)
摘要: 思路: 考虑对字符串$s$来说,假设$s' = s_{1...x}$是字符串的一个$border$,同时$s'' = s'_{1...y}$是$s'$的一个border,那么$s''$也一定是$s$的一个长度更小的$border$,即字符串$s$的$border$的$border$也是$s$的一个$ 阅读全文
posted @ 2021-09-06 13:34 x7x7g7c7 阅读(166) 评论(0) 推荐(0)
摘要: 题意: 给定你一个长度为$n$的字符串$s$,$m$个询问,每次询问给定$x,y$,问你$s[1,x]$和$s[n-y+1,n]$这两个前缀后缀串拼接形成的字符串$s'$在主串$s$中出现了几次。 思路: 首先解决这道题目前,如果大家没做过P5829,强烈推荐先做一下,$border$树的模板题,做 阅读全文
posted @ 2021-09-06 09:14 x7x7g7c7 阅读(69) 评论(0) 推荐(0)
摘要: 题意: 给定一个由$n$个点组成的树,然后每次可以从树中选择一个顶点删去,定义操作结束后是完美的,但且仅当删点后形成的点集中,每个点都有至少一个点与它相连,问一共有多少种删点方式能够形成完美的局面,答案模$998244353$。 思路: 统计方案类的问题,可以往$dp$方向靠,又是在树上,那么就是树 阅读全文
posted @ 2021-09-04 20:33 x7x7g7c7 阅读(137) 评论(0) 推荐(0)
摘要: 题意: 思路: 首先把所有同学的身高排名排个序,排名即看做他们的身高即可。 $f_{i,j}$表示前$i$个数中,有$j$个数在第二排的方案数有几种。 如果不存在重复的同学且不考虑第二排和第一排的身高限制,那么我们只需要考虑,枚举$i,j$,那么当前位置的同学就有两种转移方式,这是显然的。 再考虑存 阅读全文
posted @ 2021-09-03 16:01 x7x7g7c7 阅读(258) 评论(0) 推荐(0)