摘要:
A.长春花 简单题。打表发现情况并不多,记录下平方后模 \(p\) 对应的值,然后枚举 \(a\),用链表维护即可。 点击查看代码 #include<bits/stdc++.h> using ll=long long;using ull=unsigned long long; int a[10000 阅读全文
摘要:
此类线段树一般用来处理区间最值操作或者区间历史最值问题。 例如 线段树3,支持如下操作: 1 l r k:将 \(a_l\sim a_r\) 加上 \(k\)。 2 l r v:将 \(a_l\sim a_r\) 对 \(v\) 取最小值。 3 l r:求 \(a_l\sim a_r\) 的和。 4 阅读全文
摘要:
处理区间赋值问题的神器! 珂朵莉树的实现非常简单(baoli),建树时把区间的左右端点和权值作为一个节点 全扔到std::set(或者链表)中维护即可 split: 核心操作之一,将一段区间提取出来,在此之上进行一些操作 assign: 核心操作之二,也是降低珂朵莉树时间复杂度的重要操作,把一段区间 阅读全文
摘要:
考虑递推 假设对于前 $i$ 个线性同余方程,我们得到了 $x$ 的一个解 其通解显然为 $x+k*M_i$ 其中 $M$ 为前 $i$ 个方程的最小公倍数 对于第 $i+1$ 个方程,我们需要求出 $x+t*M_i \equiv a_{i+1} (mod \,\, m_{i+1})$ 中的t值 ` 阅读全文
摘要:
```cpp struct bignum{ #define base 10000 int a[20000]; bignum(){memset(a,0,sizeof(a));} inline void init(){memset(a,0,sizeof(a));a[0]=1;a[1]=1;} inlin 阅读全文
摘要:
qwq 阅读全文
摘要:
先暴力水过了wwwwwwwwwwwwwww ``` #include // //#define LOCAL FLANDRE KAWAII #ifndef LOCAL constexpr int SIZE(1'9';ch=getchar()) f^=ch=='-'; for(;ch>='0'&&ch 阅读全文
摘要:
维护一段区间内的排名,第k小,前驱,后继 线段树套平衡树即可 线段树上的每一个节点都建一棵平衡树维护所在的这一区间 修改和查前驱和后继就在线段树上对相应的区间进行操作即可 $O(log^2)$ 查排名就查找每一小段区间内此数的排名求和,查询每一区间小于此数的个数,最后求和加上1(它本身)即可也能在 阅读全文