062 zhengjun at_agc insert
CF613E Puzzle Lover 思考--zhengjun
题很简单,一遍写对却比较困难。 犯的错误: - 预处理 ${base}^i$ 时应该要处理到 $\max\{n,m\}$; - 去重的时候(reduce 函数)特判 $m=1,2$。 ### 代码 ```cpp #include using namespace std; using ll=long ......
CF547D Mike and Fish 小丑做法--zhengjun
写到一半发现标签有二分图就不对劲了,题解区里都是欧拉回路。 然而我是随机化+模拟网络流!~~自豪~~ 首先可以先建模,观察同一种颜色,发现每一行或每一列的限制即为 $\lfloor\frac{t}{2}\rfloor\le x\le \lceil\frac{t}{2}\rceil$。 然后套路地把横 ......
AT_agc017_b 题解
[洛谷链接](https://www.luogu.com.cn/problem/AT_agc017_b)&[Atcoder 链接](https://atcoder.jp/contests/agc017/tasks/agc017_b) 本篇题解为此题较**简单做法**,请放心阅读。 ## 题目简述 一 ......
[CF1601C] Optimal Insertion
# Optimal Insertion ## 题面翻译 ### 题目大意 给定两个序列 $a,b$,长度分别为 $n,m(1\leq n,m\leq 10^6)$。接下来将 $b$ 中的所有元素以**任意方式**插入序列 $a$ 中**任意位置**,请找出一种插入方式使结果序列中的逆序对数量最小化, ......
mybaties --- insert的底层封装代码
//提交,当前的对象到数据库//.save()方法是IService接口提供的,而EmployeeService接口继承了IService接口employeeService.save(employee); /*default boolean save(T entity) { return SqlHe ......
题解 CF1601C【Optimal Insertion】
特别鸣谢: ## problem 两个数组 $a,b$ 长度分别为 $n,m$。将 $b$ 的所有元素以任意顺序插入 $a$ 的任意位置,使最终序列逆序对数量最小,并输出这个值。$n,m\leq 10^6$。 ## solution $b$ 明显是排序成不降的最优,$a$ 原来的逆序对个数无法改变, ......
当 IDENTITY_INSERT 设置为 OFF 时,不能为表中的标识列插入显式值
SET IDENTITY_INSERT [tablename] ON ......
sqlserver insert 限制字符串的长度 小于 表字段定义的长度
sqlserver insert时,字符串长度超出表字段限定的长度,报错 写一个限定字符串长度的函数 create function GetLimitStr(@str varchar(8000),@len int) returns varchar(8000) as begin if dataleng ......
CF506E Mr. Kitayuta's Gift 思考--zhengjun
妙妙题。 首先可以有一个 $O(kn^2)$ 的 dp,但是显然不行。 但是,发现其中的大多数转移都浪费在自环上了,所以考虑不要这个东西。 这个 dp 一共有三种转移: 1. 左右端点一起向内移动一格; 2. 左端点或右端点单独移动; 3. 左右端点都不动。 所以考虑加一维 $k$ 表示走了 $k$ ......
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 ......
一类特殊的 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 ......
AT_agc002_f [AGC002F] Leftmost Ball 思考--zhengjun
思维 + dp。 如果像题意那样先放球再染色的话不是很好做。 所以考虑有 $n$ 个白球,$n$ 种其他颜色的球各 $k-1$ 个。 那么限制就是说对于每个前缀,白球的个数 $\ge$ 其他颜色球的种数。 所以就可以设 $f_{i,j}$ 为放了 $i$ 个白球,$j$ 种颜色的 $k-1$ 个球的 ......
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^{ ......
【大联盟】20230703 T2 开心的序列(sequence) 题解 AT_agc049_f 【[AGC049F] Happy Sequence】
恐怖 zak 将这题加强,出到模拟赛。直接把 $A_i,B_i\le 10^5, C_i\le 5$ 变成了 $A_i,B_i,C_i\le 10^9$。 非常恐怖。 ## 题目描述 [here](https://www.luogu.com.cn/remoteJudgeRedirect/atcode ......
CF1155F Delivery Oligopoly 警告与思考--zhengjun
警告: - 注意区分【强连通分量】,【边双联通分量】,【点双连通分量】。 思考: - 之前没有做到过边双连通分量的拆解; - 一个边双联通分量可以看作一个基环上不断加一条链; - 注意,这里加的链首尾可以为同一个位置。 到这步代码就好弄了。 ### 代码 ```cpp #include using ......
AT_arc101_d [ARC101F] Robots and Exits 题解--zhengjun
思路不错。 首先考虑把每个机器人转化为 $(a_i,b_i)$ 两个参数。 表示向左 $a_i$ 步会进入左边的出口,向右 $b_i$ 会进入右边的出口。 > 注:此时其他只能进入唯一的出口的机器人不影响答案,不考虑。 记 $c_i=0/1$ 表示 $i$ 号机器人是进入左边还是右边出口。 然后考虑 ......
题解 Bracket Insertion
[Bracket Insertion](https://www.luogu.com.cn/problem/CF1781F) 神仙 DP 题,不愧是 tourist。 容易发现,括号序列一共有 $1\cdot 3\cdot 5...\cdot (2n-1)$ 种生成方式。 假如 `(` 为 $1$,` ......
MYSQL--INSERT和SELECT联合使用
### 语法 ``` INSERT INTO table_name ( field1, field2, field3 ) SELECT column_name1, column_name2, column_name3 FROM table_name; ``` #### 注意 1. 不需要添加`VAL ......
CF512D Fox And Travelling 题解--zhengjun
计数好题。 首先对于每个连通块独立考虑,最后合并答案。 发现 点数超过 1 的强连通分量一定删不掉。 - 若连通块中存在 点数超过 1 的强连通分量 - tarjan 缩点之后,称这些点数超过 1 的强连通分量为关键点; - 那么两关键点之间的点也不能删; - 于是对于剩下的点直接 dp 即可,由于 ......
关于 dp 套 dp 的一些思考--zhengjun
dp 套 dp 一般有三种形式: - 暴力搜出一种东西的状态,发现数量不大,建出自动机开始跑; - 有关字符串的匹配问题,例如 kmp 或 AC 自动机上; - 有关 LIS 问题的可以使用一种特殊的内层 dp 优化状态。 前两个没什么好讲的,讲一下第三个。 记 $f_i$ 为 $1\sim i$ ......
HHHOJ #1252. 「NOIP 2023 模拟赛 20230716 B」打怪兽 思考--zhengjun
赛时卡了很久,没想出来怎么做。 随便乱搞了个优先级队列,过拍直接走人,然后成为了唯一的 100 分,无语了。 完事后发现这样做确实是对的,而且好写,简单讲一下。 首先需要能够判断打两个怪 $i,j$ 的优先级: - $a_i\le b_i,a_j\le b_j$,则优先攻击 $a$ 较小的那个; - ......
LOJ #6160. 「美团 CodeM 初赛 Round A」二分图染色 思考--zhengjun
[link](https://loj.ac/p/6160) 思维+容斥计数。 首先的转化比较妙,二分图转化为 $n\times n$ 的网格图染色。 > 与网络流的转化方向相反,值得注意。 然后发现两种颜色(红、蓝)如果独立染色,同一个格子可能会重复染色。 考虑容斥,式子很好列,直接容斥即可。 $$ ......
HHHOJ #1247. 「NOIP 2023 模拟赛 20230715 A」1 题解--zhengjun
> 法老找来的题,说是找了三道 其他模拟赛的 T4 拼成 T1~T3,另外搞了道 T4。 思维好题,但是放在 T1 有点搞心态,但是还好大样例够强,400 没挂。 > 然而 T3 大样例输出错了,浪费了我 0.5h,~~差评~~。 首先发现向左走之后向右走是一定不优的,所以最短路的情况只能先向右再向 ......
[YDRG#001] 提瓦特环游记 · 云斗杯 · 七月 Golden 组模拟赛 整理分析--zhengjun
[link](https://yundouxueyuan.com/contest/64ad2248301edd5a35fdba9d) > 总体评价:~~因为 K 了,所以好评,~~练一下思维蛮好的,质量不错 比赛 2.5h K 的。 ## #A. 诗人小 G 初进 OI 界 标准送分,输出 $\fr ......
Atcoder AGC062C Mex of Subset Sum
对 $a_i$ 从小到大进行排序,因为想到若 $ a_{i - 1}$ 肯定是能保证取不到的。 对排完序的 $a_i$ 做一个前缀和 $s_i = \sum\limits_{j = 1}^n$,令 $A_i$ 为 $a_{1\sim i}$ 中无法表示为子序列之和且 $ s_{i - 1} > x$ ......
P5044 [IOI2018] meetings 会议 思考--zhengjun
在 NFLS 模拟赛上遇到的,赛后订正过的。 隔了蛮长时间的,总结一下。 - 首先转化为笛卡尔树上后缀前缀的问题。 - 然后考虑如何转移,发现转移形如 $f(x)=\min\{f(x)+C,kx+b\}$ 的形式。 - 可以直接线段树维护每个点的最优直线,在 update 的时候: - 如果 $f( ......
CF1220F Gardener Alex 题解--zhengjun
发现根节点一定是 $1$,所以考虑两边的子树深度,然后发现只需要考虑一段后缀或前缀的深度即可。 所以循环位移后,可以从中间往两边构建笛卡尔树,实时维护深度即可。 ### 代码 ```cpp #include using namespace std; using ll=long long; const ......
CF1175F The Number of Subpermutations 对自己的警告--zhengjun
太久没见过启发式合并了,然后没想出做法。 首先笛卡尔树建出来。 然后直接枚举跨过 $mid$ 的长度为 $a_{mid}$ 的区间,RMQ $O(1)$ 验证即可。 发现这样的区间个数不超过左右区间大小的较小值,时间复杂度:$O(n\log n)$。 ### 代码 ```cpp #include u ......
HHHOJ #1242. 「NOIP 2023 模拟赛 20230713 D」星海巡航 总结与思考--zhengjun
> 随机排列的最长上升子序列长度的期望是 $O(\sqrt{n})$。 这个结论知道最好,不知道也问题不大,赛时随一个跑一下也行。 警告: - 一直考虑正着做,产生了思维定式 - 正难则反啊,反着做发现只需考虑第一次覆盖的数就行了。 - 接下来的贪心也没想到:序列中不应该出现不在 $LIS$ 中的数 ......