zhengjun

P5321 [BJOI2019] 送别 题解--zhengjun

由于大家的做法需要大量分类讨论和代码量,这里提供一种不怎么分类的,容易实现的做法。 首先,由于墙体会随时变化,所以直接对墙体本身维护不是很方便。 我们可以牺牲一点常数,对 \((i,j)\) 建立四个点 \(UL_{i,j},UR_{i,j},DL_{i,j},DR_{i,j}\) 分别表示 \(( ......
题解 zhengjun P5321 5321 2019

HDU #6664. Andy and Maze 题解--zhengjun

对每个点随机黑白染色,强制答案链的前 \(\lfloor \frac{k}{2}\rfloor\) 个点和后 \(\lceil \frac{k}{2} \rceil\) 个点的颜色不同。 计算答案只需要枚举中间这条两端颜色不同的边 \((u,v,w)\),然后分成两边计算 \(u,v\) 出发的经过 ......
题解 zhengjun 6664 Andy Maze

洛谷 P5669 [SDOI2018] 原题识别-改 题解--zhengjun

题面 鉴于这题目前还没题解,提供一种时间 \(\Theta(n\sqrt{m})\),空间 \(\Theta(n+m)\) 的做法。 询问 1 可以直接上树分块或者树上莫队,见 P6177 Count on a tree II/【模板】树分块。 但是因为本题询问 2 的做法,所以我采用了树上莫队的做 ......
题解 zhengjun P5669 5669 2018

洛谷 P3993 [BJOI2017] 同构 题解--zhengjun

题面 提供一种不需要多项式/生成函数的做法。 方便起见,记 \(P(G)=0/1\) 表示 \(G\) 是否不存在非平凡自同构。 首先发现对于图 \(G\) 的补图 \(G'\),显然 \(P(G)=P(G')\)。 那么边数的最大值 \(=\frac{n(n-1)}{2}-\) 边数的最小值。 显 ......
题解 zhengjun P3993 3993 2017

任意模数多项式模板--zhengjun

using LL=__int128; int mod=998244353; ll qpow(ll x,ll y=mod-2,ll ans=1){ for(;y;(x*=x)%=mod,y>>=1)if(y&1)(ans*=x)%=mod; return ans; } mt19937 rnd(time ......
多项式 模数 zhengjun 模板

模板集合--zhengjun

多项式vector模板 非负数vector模板 二维计算几何模板 最大流/费用流模板 矩阵乘法模板 ......
zhengjun 模板

多项式模板--zhengjun

vector 实现。 using LL=__int128; const int mod=998244353; ll qpow(ll x,ll y=mod-2,ll ans=1){ for(;y;(x*=x)%=mod,y>>=1)if(y&1)(ans*=x)%=mod; return ans; } ......
多项式 zhengjun 模板

NOIP 2023 游记--zhengjun

Day \(-1\) 早上开了场 CF Div1+2 VP,ABCD 都一眼秒,E 假了一发,然后仔细差分了一下才过。 中午吃得有点饱,感觉车上要吐。 上车和 fls 看了一下 CSP 2023 大巴车上没看完的《爱乐之城》,然而看到一半眼皮撑不住了,电脑耳机给了 fls,开始睡大觉。 睡醒的时候 ......
zhengjun 游记 NOIP 2023

NOIP 考前模板复习--zhengjun

#include<bits/stdc++.h> using namespace std; using ll=long long; #ifdef DEBUG template<typename T> ostream& operator << (ostream &out,vector<T> a){ ou ......
zhengjun 模板 NOIP

洛谷 P7115 [NOIP2020] 移球游戏 + P8866 [NOIP2022] 喵了个喵 警告--zhengjun

构造题注意事项 一定要转化思路,不要总是盯着一个特殊点; 多注意特殊点的变化: 例如 P7115 [NOIP2020] 移球游戏,如果总是盯着一个全不是 \(c\) 的栈和一个空的栈对其他栈操作,就会使得步数要翻一倍,然而如果只操作一半,那么此时可以用当前栈作为新的空栈,原来的空栈作为新的全不是 \ ......
NOIP zhengjun P7115 P8866 7115

计算几何模板--zhengjun

二维 struct vec{ int x,y; vec(int a=0,int b=0):x(a),y(b){} }; vec operator + (const vec &a,const vec &b){ return vec(a.x+b.x,a.y+b.y); } vec operator - ......
几何 zhengjun 模板

网络流模板--zhengjun

#include<bits/stdc++.h> using namespace std; using ll=long long; const int N=1e5+10,M=2e5+10,Inf=1e9; namespace Flow{ const ll INF=1e18; const int V=N ......
zhengjun 模板 网络

关于斐波那契数列的有趣性质--zhengjun

思路来自 [这里](https://www.luogu.com.cn/blog/zifanwang/sta-r3-gao-wei-li-fang-ti-ti-xie)。 $\operatorname{fib}(1)=\operatorname{fib}(2)=1,\operatorname{fib} ......
数列 zhengjun 性质

P9511 『STA - R3』大豆 题解--zhengjun

妙妙题。 ### 题意 给定 $F_0(x)=a_{(x-1)\bmod n +1}$。 $$ F_k(x)=F_{k-1}(x)-\sum\limits_{i=2}^n F_k(\lfloor\frac{n}{i}\rfloor) $$ 求 $F_k(m)$。 $1\le n\le 10^4,1\ ......
题解 大豆 zhengjun P9511 9511

CF578E Walking! 反思--zhengjun

WA 了十几发,清醒了之后发现自己是个 sb。 首先肯定贪心选,让每条链尽量长即可。 最后直接跑个欧拉回路即可(两个点的欧拉回路(ˉ▽ˉ;)...)。 分析一下,发现两个点的度数一定满足要求,无非就是是否联通。 那么如果两个点之间没有连边并且两个点都有自环,那么就会不连通。 只需要考虑这种特殊情况就 ......
zhengjun Walking 578E 578 CF

矩阵乘法模板--zhengjun

```cpp struct matrix{ int a[M][M]; matrix(){ memset(a,0,sizeof a); } matrix operator * (const matrix &x)const{ matrix b; for(int k=0;k<m;k++) for(int ......
乘法 矩阵 zhengjun 模板

CF559E Gerald and Path 思考--zhengjun

做了半天,然后打开题解发现里面全是 $O(n^3)/O(n^2)$ 的。 然后我的原来 $O(n^5)$ 的前缀 $\max$ 优化成 $O(n^4)$ 的就非常🤡。 为了区分 $[l,r]$ 中的 $l$ 和第 $i$ 个线段的长度 $l_i$,令 $b_i$ 表示第 $i$ 个线段的长度。 # ......
zhengjun Gerald 559E Path 559

P9499 「RiOI-2」change 题解--zhengjun

思维妙妙题。 赛时的错误做法: - 找到每个点往后进位变优的位置,最多 $O(\log)$ 个; - 然后从前往后能变优就变优,往后贪心进位。 hack 数据: ``` 0 1 3 3 5 100 2 1 0 2 2 ``` 输出:`100` 这样子由于 $1$ 到 $2$ 不优,而 $1$ 到 $ ......
题解 zhengjun change P9499 9499

P9494 「SFCOI-3」进行一个走的行 思考--zhengjun

平衡树好题。 考虑整体直接模拟操作。 - `l -1 x` - $x\in[1,l]$:不用动; - $x\in(l,2l]$:整体减去 $l$ 之后暴力插回去; - $x\in(2l,+\infty)$:整体减 $l$ 与第一段合并。 - `l r x`:区间加即可 复杂度显然是 2log 的,考 ......
zhengjun P9494 SFCOI 9494

CF613E Puzzle Lover 思考--zhengjun

题很简单,一遍写对却比较困难。 犯的错误: - 预处理 ${base}^i$ 时应该要处理到 $\max\{n,m\}$; - 去重的时候(reduce 函数)特判 $m=1,2$。 ### 代码 ```cpp #include using namespace std; using ll=long ......
zhengjun Puzzle Lover 613E 613

CF547D Mike and Fish 小丑做法--zhengjun

写到一半发现标签有二分图就不对劲了,题解区里都是欧拉回路。 然而我是随机化+模拟网络流!~~自豪~~ 首先可以先建模,观察同一种颜色,发现每一行或每一列的限制即为 $\lfloor\frac{t}{2}\rfloor\le x\le \lceil\frac{t}{2}\rceil$。 然后套路地把横 ......
小丑 zhengjun 做法 547D Mike

CF506E Mr. Kitayuta's Gift 思考--zhengjun

妙妙题。 首先可以有一个 $O(kn^2)$ 的 dp,但是显然不行。 但是,发现其中的大多数转移都浪费在自环上了,所以考虑不要这个东西。 这个 dp 一共有三种转移: 1. 左右端点一起向内移动一格; 2. 左端点或右端点单独移动; 3. 左右端点都不动。 所以考虑加一维 $k$ 表示走了 $k$ ......
Kitayuta zhengjun 506E Gift 506

P3352 [ZJOI2016] 线段树 思考--zhengjun

有一个显然的 $O(n^3q)$ 的做法: - 设 $f_{i,l,r,x}$ 表示 $i$ 次操作过后,区间 $[l,r]$ 的数 $\le x$,$a_{l-1},a_{r+1}>x$ 的方案数。 - 转移:$$f_{i,l,r,x}=f_{i-1,l,r,x}\times g_{l,r}+\s ......
线段 zhengjun P3352 3352 2016

一类特殊的 dp 模型--zhengjun

这类问题大概长这样: 求一个排列 $p_{1\sim n}$,最小(大)化如下值: $$ \sum\limits_{i=1}^{n-1}f(p_i,p_{i+1})\\ f(i,j)= \left\{ \begin{array}{**lr**} g(i)+h(j),ij \end{array} \r ......
zhengjun 模型 dp

AT_agc002_f [AGC002F] Leftmost Ball 思考--zhengjun

思维 + dp。 如果像题意那样先放球再染色的话不是很好做。 所以考虑有 $n$ 个白球,$n$ 种其他颜色的球各 $k-1$ 个。 那么限制就是说对于每个前缀,白球的个数 $\ge$ 其他颜色球的种数。 所以就可以设 $f_{i,j}$ 为放了 $i$ 个白球,$j$ 种颜色的 $k-1$ 个球的 ......
002 Leftmost zhengjun AT_agc 002F

UOJ #37. 【清华集训2014】主旋律 整理--zhengjun

好像没做过 DAG 计数的题。 首先看到数据范围,考虑状压。 方便起见,记 $cnt_{S,T}=\sum\limits_{(u,v)\in E}[u\in S \and v \in T]$。 设 $f_S$ 表示 $S$ 为强连通分量的选边方案数,由于正面很难算。 考虑反面: $$ f_S=2^{ ......
主旋律 zhengjun 2014 UOJ 37

CF1155F Delivery Oligopoly 警告与思考--zhengjun

警告: - 注意区分【强连通分量】,【边双联通分量】,【点双连通分量】。 思考: - 之前没有做到过边双连通分量的拆解; - 一个边双联通分量可以看作一个基环上不断加一条链; - 注意,这里加的链首尾可以为同一个位置。 到这步代码就好弄了。 ### 代码 ```cpp #include using ......
Oligopoly Delivery zhengjun 1155F 1155

AT_arc101_d [ARC101F] Robots and Exits 题解--zhengjun

思路不错。 首先考虑把每个机器人转化为 $(a_i,b_i)$ 两个参数。 表示向左 $a_i$ 步会进入左边的出口,向右 $b_i$ 会进入右边的出口。 > 注:此时其他只能进入唯一的出口的机器人不影响答案,不考虑。 记 $c_i=0/1$ 表示 $i$ 号机器人是进入左边还是右边出口。 然后考虑 ......
题解 101 zhengjun AT_arc Robots

CF512D Fox And Travelling 题解--zhengjun

计数好题。 首先对于每个连通块独立考虑,最后合并答案。 发现 点数超过 1 的强连通分量一定删不掉。 - 若连通块中存在 点数超过 1 的强连通分量 - tarjan 缩点之后,称这些点数超过 1 的强连通分量为关键点; - 那么两关键点之间的点也不能删; - 于是对于剩下的点直接 dp 即可,由于 ......
题解 Travelling zhengjun 512D 512

关于 dp 套 dp 的一些思考--zhengjun

dp 套 dp 一般有三种形式: - 暴力搜出一种东西的状态,发现数量不大,建出自动机开始跑; - 有关字符串的匹配问题,例如 kmp 或 AC 自动机上; - 有关 LIS 问题的可以使用一种特殊的内层 dp 优化状态。 前两个没什么好讲的,讲一下第三个。 记 $f_i$ 为 $1\sim i$ ......
zhengjun dp
共57篇  :1/2页 首页上一页1下一页尾页