题解1203 div cf

ABC328题解(C-G)

A/B 较为简单,略去。 C 预处理一下,然后前缀和就好了。 时间复杂度 \(O(n)\)。 D 用链表来记录字符串。 注意到每次能够消去意味着链表上连续三个节点拼起来是 ABC,然后从左到右一个个算就行了。 匹配到的话把三个节点一起删掉。 时间复杂度 \(O(n)\)。 E 注意到 \(N\le ......
题解 ABC 328 C-G

【题解 P8763】[蓝桥杯 2021 国 ABC] 异或变换

同楼上dalao做法: #include <iostream> #include <algorithm> #include <cstdio> #include <cmath> #include <cstring> #include <string> #include <cstdlib> #inclu ......
蓝桥 题解 P8763 8763 2021

2022新生赛 玩石头 题解

这题乍一看是个背包,但是它对背包物品的重量进行了限制,而且我们没有手段得知当前物品是否大于前面所有物品。研究发现,纪念品最大价值不会超过4000.因此我们可以用类似于01背包的做法,以纪念品价值作为重量,纪念品重量作为价值来dp.打表可以发现,在给定数据的范围下,石头塔最多为三十层,则时髦值之和最大 ......
题解 新生 石头 2022

P9836 种树 题解

蒟蒻在考场上花了 2h45min AC 本题 通过高度求宽度 定义一棵树的宽度为它高度的正因数个数 我们可以预处理 \(10^4\) 之内素数。 for(ll i=2; i<=10000; i++) { if(ok[i]==0) { ok[i]=i; pr[++nP]=i; } for(ll j=1 ......
题解 P9836 9836

CF226E Noble Knight's Path

重链剖分真可爱,数据结构真可爱。 tags: \(\text{data structures}\) \(\text{trees}\) $\color{red}{*2900} $ 洛谷 CF 给出一棵 \(n\) 个点的树,初始所有点为白色。还有 \(q\) 次操作,第 \(i\) 个操作发生在第 \ ......
Knight Noble 226E Path 226

[题解] CF1327F AND Segments

AND Segments 有 \(m\) 个限制 \((l, r, x)\)。 要计算满足以下条件的长度为 \(n\) 的序列 \(a\) 的数量: \(\forall i \in [1, n], 0 \le a_i < 2^k\)。 \(\forall i \in [1, m], a_{l_i} ......
题解 Segments 1327F 1327 AND

CF 628 C Bear and String Distance

题面翻译 题目描述: Limak是一只小北极熊。他喜欢单词——只由小写字母构成,长度为n的单词。 他规定dist(s,s')的值为s与s'在26个字母中的间距。如,dist(c,e)=dist(e,c)=2,dist(a,z)=dist(z,a)=25。 而且,当dist两个单词时,其值为dist第 ......
Distance String Bear 628 and

CF1304E 1-Trees and Queries(lca+树上前缀和+奇偶性)

题目 二话不说,直接按题意模拟暴搜,当然 \(O(nq)\) 的复杂度显然是寄了的。 不过,在模拟的过程中,我在链式前向星的删边中居然一开始错了,还是要 mark 一下以后注意。 void del(int x, int pre) { e[top].to = e[top].next = 0; h[x] ......
奇偶 前缀 Queries 1304E Trees

AT_agc057_e 题解

AT_agc057_e [0] 约定 \(r_i = \sum\limits_{j = 1}^{m}[A_{i,j}\le k]\) \(r^{'}_i = \sum\limits_{j = 1}^{m}[B_{i,j}\le k]\) \(c_j = \sum\limits_{i = 1}^{n} ......
题解 AT_agc 057 agc AT

[题解] AT_dp_w Intervals

Intervals 有 \(m\) 条形如 \((l, r, a)\) 的限制,表示如果 \(s_{[l, r]}\) 中有 1 就会有 \(a\) 的价值。 你要求长度为 \(n\) 的 01 串的价值的最大值。 \(n, m \le 2 \times 10^5\)。 将每个限制挂到右端点上,在右 ......
题解 Intervals AT_dp_w AT dp

Codeforces Round 908 (Div. 2) A-D

Secret Sport 观察到数据不大,直接摁住x和y枚举即可,方案合法当且仅当刚好打若干局,且赢最后一局的人是赢家 #include<bits/stdc++.h> using namespace std; void solve(){ int n; cin>>n; string s;cin>>s; ......
Codeforces Round 908 A-D Div

cf1325D. Ehab the Xorcist(位运算trick)

https://codeforces.com/contest/1325/problem/D 有一个非常经典的结论 a+b=(a^b)+2(a&b) 这个题就可以往上面靠,首先我们观察一下,对于两个数的情况,如果(v-u) mod 2=1,必然无解,试着将它扩展一下,也是对的,因为最低一位没有进位。 ......
Xorcist trick 1325 Ehab the

Codeforces Round 887 (Div. 2)

https://codeforces.com/contest/1853 C题感觉很不好写的样子,首先通过打表发现最后答案每次都是+n,那么我们考虑前i个,假如当前的ans+i仍然小于a[i+1],则没有影响,我们依然可以直接往后跳,否则,我们越过了a[i+1],那么我们应当加上i+1,注意,这有可能 ......
Codeforces Round 887 Div

CF1393E1/2

传送门 description 给定 \(n\) 个字符串 \(S_i\),可以给每个串删除一个字符或者不动。求有多少种操作方案使得最后的 \(n\) 个字符串(可能有空的),字典序单调不降。 \(n\leq 10^5\) \(\sum|S_i|\leq 10^6\) solution 设 \(f_ ......
1393 CF E1

CF803G Periodic RMQ Problem

题目描述 给你一个序列\(a\) 让你支持 \(1\) \(l\) \(r\) \(x\) 区间赋值 \(2\) \(l\) \(r\) 询问区间最小值 我们觉得这个问题太水了,所以我们不会给你序列\(a\) 而是给你序列一个长度为\(n\) 的序列\(b\) ,把\(b\) 复制粘贴\(k\) 次 ......
Periodic Problem 803G 803 RMQ

CF1316D Nash Matrix(构造/dfs)

题目 第一次做构造题,做了两节晚自习 qwq 一开始我完全是正着想,首先 \(X\) 是显然的,但其他的点就不好做了, 然后我就想,可行的一般结论推不出,那就想反例,然后我想啊想......倒是想到了几个,比如说环与环之间不能有相交,环内外的点不能互相到达,跟本举不完,而且也不好实现,还是要想一般结 ......
Matrix 1316D 1316 Nash dfs

CF1895

CF1895 D 考虑将原条件转化为 \(b_{i+1}=b_{i}\oplus a_i\),那么确定了 \(a_0\) 就可以确定所有 \(b\) 。暴力是枚举 \(a_0\),计算所有 \(b\) 的最大值,考虑在 trie 上计算异或最大值。 其他做法:按位考虑,每位只有两种方法,考察 \(c ......
1895 CF

洛谷 P9680 string[_view] 题解

洛谷 P9680 string[_view] 题解 link Sol 模拟题。 我们先定义一个结构体,来存储定义的字符串的名字,内容和长度。每一次输入分两个字符串,一个是类型,一个是名字和赋值内容。当遇到 string 时,如果是用字面量赋值,那么就计算引号里字符串的长度 \(l\)。然后把答案加上 ......
题解 string P9680 9680 view

[POI2011] SMI-Garbage 题解

题目链接 显然,对于初始颜色与目标颜色不同的边,我们需要走过奇数次;对于初始颜色与目标颜色相同的边,我们需要走过偶数次。 对于只有偶数边的情况,这种情况下不走就行;对于只有奇数边;可以理解为每条边只能经过一次,就是欧拉路径问题,并且考虑这题的特殊性质,如果一个图是由若干个简单环构成的连通图,那么显然 ......
题解 SMI-Garbage Garbage 2011 POI

CF1485F Copy or Prefix Sum 题解

思路 考虑 \(a_i\) 要么是 \(b_i\) 要么是 \(b_i - s\)。 考虑 \(s\) 代表着什么。 它是 \(a\) 的前缀和。 那么必然是往前一段 \(b\) 的和。 因为每个 \(b\) 代表着要么是这一位的 \(a\) 或者前面所有的 \(a\)。 考虑设 \(f_i\) 为 ......
题解 Prefix 1485F 1485 Copy

CSP-S2019 江西 题解

为什么有 \(5\) 道题? [CSP-S2019 江西] 和积和 简单化一下式子: \[(n + 1) \times \sum A_i \times B_i - (\sum A_i) \times (\sum B_i) \]其中 \(A, B\) 都是前缀和。 [CSP-S2019 江西] 网格图 ......
题解 CSP-S 2019 CSP

CF1485E Move and Swap 题解

不要什么脑子的带 \(log\) 做法。 思路 考虑 \(dp_{i,j}\) 表示红点到 \(i\),蓝点到 \(j\) 的最大权值。 那么有: \[dp_{i,j}=\max(dp_{fa_i,pre},dp_{fa_j,pre})+|a_i-a_j| \]其中 \(pre\) 是任意一个上一层 ......
题解 1485E 1485 Move Swap

Codeforces Round 907 (Div. 2) ABCF

Codeforces Round 907 (Div. 2)ABCF A. Sorting with Twos 题意:给你一个数组\(a_1,a_2,...,a_n\),你可以进行以下操作: 选择一个非负整数\(m\),并且\(2^m\le n\) 把\(1\le i \le 2^m\)的元素\(a_ ......
Codeforces Round ABCF 907 Div

CSP-2019-S 题解

做了这套题,如果是让现在的我当时去考的话应该一共可以有 450 分,格雷码,括号树,树的重心都可以做,树上的数可以有 10 分,Emiya 至少可以有 76 分, 划分也可以有 64 分。看 OIerDB 上可以有 166 名的好成绩。 我的代码合集:洛谷 / 云剪贴板 [CSP-S2019] 格雷 ......
题解 2019 CSP

【动态规划】【动态 DP】 CF750E New Year and Old Subsequence

题目描述 定义数字串是好的当且仅当其包含子序列 2017 ,不包含子序列 2016。 定义数字串的丑陋值为最少删掉几个字符,它才能是好的,如果一直不能,就是 \(-1\) 。 给定数字串 \(t\) ,长度为 \(n\) ,\(q\) 次询问求 \([l,r]\) 的丑陋值。 \(1 \leq n, ......
动态 Subsequence 750E Year 750

Codeforces Round 903 (Div. 3) ABCDE

Codeforces Round 903 (Div. 3)ABCDE A. Don't Try to Count 题意:复制\(s\)串若干遍,是否能在\(s\)串中找到\(t\)串。 思路:直接暴力,注意不要超限,会MLE // AC one more times // nndbk #includ ......
Codeforces ABCDE Round 903 Div

CF1428F Fruit Sequences 题解

使用了一种和大多数题解不同的做法。 虽然是带 \(log\) 的。 思路 首先考虑如何求一个固定左端点的答案。 我们发现,每个答案会随着右端点的递增单调不降。 而每个答案在增加时会形成若干个区间。 例如: 11101010111111 我们答案增加的区间即为: 11100000000111 可以发现 ......
题解 Sequences 1428F Fruit 1428

CF1043F Make It One

题目描述 给你一个长度为 \(n\) 的序列 \(A_i\) ,问你最少能从这个集合中取出多少数使得其 \(\gcd=1\) 数据范围 \(1\leq n\leq 3\times 10^5\);\(1\leq a_i \leq 3\times 10^5\). 思路: 首先观察一下这个数据范围,其中小 ......
1043F 1043 Make One CF

CSP-S R2 T4 种树题解

\(First\) -大意: 给定一颗以 \(1\) 为根有 \(n\) 个节点的树,可以在每个节点上种一颗高度为 \(0\) 的树,每天可以选择一个未种树且与某个已种树的节点通过一条边连接的节点种树,每个节点 \(i\) 的树种下后第 \(x\) 天( \(x\) 从整个任务的第一天开始计算)会成 ......
题解 CSP-S CSP R2 T4

luogu P1608 路径统计题解

update 2022.2.17 图炸了 update 2022.8.20 修改了一些错误 step 0 一些建议 做此题前建议先去做 P1144 最短路计数 并且建议使用 Dijkstra 算法去写,原因在 这个帖子 和 这个帖子 也感谢这位大佬的付出。 不然我就要拿SPFA写了。 step 1 ......
题解 路径 luogu P1608 1608