摘要: 互质区间计数,这个题非常有意思,他首先是按套路拆成左端点,又是按套路把数暴力存在因子的平衡树上查前驱后继 修改的时候就和天才少年那个题一样把平衡树的修改,线段树插入撤销相当于+1-1,根据他不可能删掉没有的操作可以转化为求最小值个数 xor circle,特判比较多,但是跟我们的启示是如果出现相邻… 阅读全文
posted @ 2021-10-21 08:28 maruize 阅读(82) 评论(0) 推荐(0)
摘要: 今年qbxt,基本完成 去年bct,未完 之前的qbxt大部分未完 今年zr,大部分完成 去年zr未完 阅读全文
posted @ 2021-10-20 10:44 maruize 阅读(24) 评论(0) 推荐(0)
摘要: CF747 A考虑可以有负数,奇数的话用n/2 n/2+1,偶数的话用负数抵消 B考虑n进制第k位,如果不考虑1的话就是n*k 所以枚举k的每一位,把他变成b进制就好了 C直接n,这样的话1-n-1都不能被整除,然后再把n干掉就好了 还有一个考虑1次销完的问题,然后我们枚举每个数因子然后都加1然后看 阅读全文
posted @ 2021-10-09 10:55 maruize 阅读(24) 评论(0) 推荐(0)
摘要: 二维偏序问题,可以用排序+树状数组实现 多维呢,我们发现有bitset压位(not paratical) kdt(利用分治,常数极大) 二进制分组主席树 区间修改主席树(空间极大) 树套树(空间极大),又分为多种树套多种树 cdq分治,常数极小,只能离线 整体二分,在特殊情况下只能用这个,离线 定期 阅读全文
posted @ 2021-10-04 22:16 maruize 阅读(59) 评论(0) 推荐(0)
摘要: 得自己写代码设计,可能一个代码造两三组数据一般先随机出若干个短的字符串,然后把他们组合起来 随机 gen 一个棋盘行列 swap让你的程序跑两次一样就对 阅读全文
posted @ 2021-10-02 22:13 maruize 阅读(28) 评论(0) 推荐(0)
摘要: d1:t1暴力 t2一开始看成l-r里随便选单个数异或小于x的数了,这个可以倍增归约二分套线段树,复杂度一个log 考虑对c排序,每次找差量,统计答案 对原序列差分,问题转化为每次异或两个点 然后我们发现除非两个点都被更新过否则直接乘 如果两个都更新过那么就找大的那个乘起来 然后你发现wa了,错误原 阅读全文
posted @ 2021-10-01 17:54 maruize 阅读(110) 评论(0) 推荐(0)
摘要: A:打表,发现时n!/2,证明的话可以观察到具有自反性 B:垃圾,发现一条链和菊花图分别是极端数据,搞搞就完了 C:双指针,枚举两行,中间单调性 D:考虑一个数什么时候被称为段的最大值,当且仅当他为最大时 设f[i][j]表示当前枚举到1-i的排列,有j个最大值的方案数 然后再设一维k,表示有了k个 阅读全文
posted @ 2021-09-30 21:34 maruize 阅读(100) 评论(0) 推荐(0)
摘要: 把左括号当作+1,右括号当作-1来考虑 理论上都应该在0处统计答案 但是(())跟()是不一样的 然后我们考虑一个算贡献肯定是在山谷处算贡献 然后一种贡献是() 另一种是()() 然后()的肯定是不是山谷你直接拿个单调栈 (())的也是能用单调栈统计 阅读全文
posted @ 2021-09-30 08:08 maruize 阅读(25) 评论(0) 推荐(0)
摘要: 首先考虑这个题如果确定了第一列和第一行那么就确定了,然后如果确定了一个三角那么就能确定第四个数 所以确定第一行且确定了第二行第一个数就能确定第二行 考虑dp,长度为i的连续段中黑白染色,染出的最大黑连续段为x的方案数 然后我们发现这个可以整除分块 然后这个转化为长度为i的连续段中,染出的最大黑连续段 阅读全文
posted @ 2021-09-30 07:03 maruize 阅读(184) 评论(0) 推荐(0)
摘要: 这个题假如问l-r是否能凑出x这个是个很简单的dp 考虑最暴力的dp f(i)=j=1⋁i​f(j−1)∧[s[j:i]∈[l,r]] 然后我们发现这个j:i有很多冗余的状态,我们需要优化它 考虑计数外层数位dp,里面维护状态用状压dp,类似于康托展开优化dp 关键点:如果有两个不同的【s和 DP 阅读全文
posted @ 2021-09-30 06:53 maruize 阅读(106) 评论(0) 推荐(0)