题解codeforces round split

CodeForces 331E2 Deja Vu

洛谷传送门 CF 传送门 考虑一条好的路径 \(x \to y\) 中一定至少存在一条边 \((u, v)\),满足这条边的序列 \(a\) 存在一个 \(j \in [1, |a| - 1]\),满足 \(a_j = u, a_{j + 1} = v\),就是说 \(a\) 包含一对相邻的 \(( ......
CodeForces 331E2 331E Deja 331

Codeforces Round 651 (Div. 2)C. Number Game(数学思维数论)

C. Number Game 我们考虑那些状态是必胜态 我的回合时n为奇数(除1外),直接除以n则必胜 下面偶数的情况稍复杂 偶数我们能进行的操作只有除以一个奇数,需要考虑怎么把当前状态变为对手的必败态 偶数一定含2的因子,\(n=2^k*q,q为奇数\) 当\(k=1时如果q\)是一个质数那么只能 ......
数论 Codeforces 思维 数学 Number

P3426 [POI2005] SZA-Template 题解

题意: 给定一个字符串,求能盖出这个字符串的印章的最小长度。 分析: 显然,这个印章一定是 \(s\) 的 border。 记 \(dp_{i}\) 表示盖满前 \(i\) 个的最小印章大小,那么答案只可能为 \(i\),或者 \(dp_{kmp_{i}}\)。 证明如下: 显然答案为 \(i\) ......
题解 SZA-Template Template P3426 3426

Codeforces Round 638 (Div. 2)B. Phoenix and Beauty

B. Phoenix and Beauty 这道题目学到的东西: 从给出的数据范围观察,得到一些有用信息(峰哥教的) 考虑无解的情况‘ 其实这题考虑怎么操作是比较难的,如果能想出来满足条件的结果就比较好了(我在说什么我自己也不知道,算了直接看下面的图吧) 假设\(k=3\),下面是我们得到的结果数列 ......
Codeforces Phoenix Beauty Round 638

[CF17E] Palisection 题解

[CF17E] Palisection 题解 思路 直接统计相交的字符串很难数,考虑正难则反。 用总共的回文串对数减去相离的回文串个数。 设总共有 \(tot\) 个回文串,用 manacher 跑出来每个位置的最大回文半径后,使用差分的技巧保存两个数组: \(f_i\) 表示以 \(i\) 为开头 ......
题解 Palisection 17E CF 17

CF187A 题解

原题传送门 题目大意 如题意翻译。 思路分析 很水的一道题目,可以将第一个排列 \(a\) 看作最终排列,接下来每输入一个数,让它与 \(a_m\) 进行比较,直到两个排列相同。 最后看题目范围,\(1≤n≤2\times10^5\),时间复杂度 \(\mathcal{O(n)}\),空间复杂度 \ ......
题解 187A 187 CF

CF1912L 题解

原题传送门 题目大意 有一个仅有 0 和 L 构成的序列,求出一种方案,使得左部分的 0 数量不等于右部分的 O 数量,且左部分的 L 数量不等于右部分的 L 数量,若不存在输出 -1。 思路分析 首先看题目范围,\(2≤n≤200\),数据很小,考虑暴力。 可以使用字符串截取函数 s.substr ......
题解 1912L 1912 CF

2023第七届强网杯 个人题解

27 htppy Spring 评价: 相对简单,放出来的晚,做的出来的人相对比较少 大致流程是可以上传.pebble模板文件,然后通过访问上传的恶意模板文件进行rce。 首先上传恶意模板文件,经过几次尝试,黑名单过滤了,org.springframework.context.support.Cla ......
题解 个人 2023

P5289 [十二省联考 2019] 皮配 题解

题目链接 点击打开链接 题目解法 题意比较复杂,形式化一下题意是: 一些人和一些城市,每个人属于一个城市,每个人属于 \(A/B/C/D\) 队,需要满足:每个城市中的人要么都属于 \(AC\) 或 \(BD\),且 \(A+C\le C_0,\;B+D\le C_1,\;A+B\le D_0,\; ......
题解 P5289 5289 2019

[Codeforces] CF1579C Ticks

CF1579C Ticks 题意 \(n \times m\) 的棋盘,左上角和右下角坐标分别为 \((1, 1), (n, m)\),一开始每个格子为白色。 每次操作可以选择一个格子 \((x, y)\) 以及左上角和右上角方向的 \(d\) 个连续格子染成黑色,并将其称为一个大小为 \(d\) ......
Codeforces 1579C Ticks 1579 CF

[Codeforces] CF1817A Almost Increasing Subsequence

CF1817A Almost Increasing Subsequence 题意 给定长度为 \(n\) 一个序列 \(a\) 以及 \(q\) 次询问,每次询问给出 \(l\) 和 \(r\),找出序列 \(a\) 在 \([l,r]\) 内最长的几乎递增子序列。 对于几乎递增的定义:如果一个序列 ......

[Codeforces] CF1811E Living Sequence

CF1811E Living Sequence 这道题洛谷题解的思路比我的更好,可以参考一下题解,但是没人提到我这种做法 题意 给定一个正整数 \(k\) \((1\le k\le10^{12})\),请你输出第 \(k\) 个数字里没有 4 的正整数。 思路 设 \(f_i\) 表示前 \(10^ ......
Codeforces Sequence Living 1811E 1811

[THUPC 2024 初赛] 套娃题解

题目大意 你需要对每一个长度的区间,求出以他为长度的区间的 \(mex\) 构成集合的 \(mex\) \(n\le10^5\) 大致思路 有一个神奇的结论:对于点 \((l,r)\) 为 \(mex_{l,r}\) 的矩形,其中按颜色分割得到的矩形数是 \(O(n)\) 级别的 证明&实现:我们考 ......
题解 初赛 THUPC 2024

CF1746E2 Joking (Hard Version) 题解

非常厉害的一道交互题。 思路 由于交互库会说谎,我们考虑把两次询问划分成一组。 结论:假如一个集合在两次询问中都为不成立,那么这个集合也就一定不成立。 证明显然,因为这两次中总有一次时真话。 那么我们就可以想到一个比较暴力的想法。 每一次把集合划分为四个,\(S_{0,0},S_{0,1},S_{1 ......
题解 Version Joking 1746E 1746

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

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

CodeForces 1913E Matrix Problem

洛谷传送门 CF 传送门 考虑费用流,对于每一行建两个点 \(i_0, i_1\),分别代表这一行的所有 \(0, 1\)。同样每一列建两个点 \(j_0, j_1\)。源点分别向 \(i_0, i_1\) 连流量为这一行要求的 \(0\) 或 \(1\) 的个数,费用为 \(0\)。同理连汇点。 ......
CodeForces Problem Matrix 1913E 1913

CF1914 D Array Collapse 题解

Link CF1914 D Array Collapse Question 初始给出一个数组 \(\{P\}\) ,数组中每个值都不相同,我们可以选中 \(P\) 数组中连续的一段,然后删除除了最小值以外的所有元素,求删除多次(包括 \(0\) 次)后,剩下的数组的数量 Solution 当时就没怎 ......
题解 Collapse Array 1914 CF

[AGC001E] BBQ Hard 题解

题目链接 点击打开链接 题目解法 很有技巧的一道题 观察数据范围发现 \(a_i,b_i\) 很小,所以考虑和值域有关的做法 从组合意义上考虑组合数,不难想到 \(\binom{a_i+b_i+a_j+b_j}{a_i+a_j}\) 为 \((0,0)\) 到 \((a_i+a_j,b_i+b_j) ......
题解 001E Hard AGC 001

P9973 [THUPC 2024 初赛] 你说得对,但是 AIGC の 题解

难度极低。显然,句子开头是You are right, but即为人工智能。 #include <iostream> #include <string> #include <cstdio> namespace io{ template <typename T> inline void read(T& ......
题解 初赛 P9973 THUPC 9973

P3243 [HNOI2015] 菜肴制作 の 题解

本题是我的第一道蓝题,故我认为这道题稍难。 在本题解中,会列出一些坑点供大家参考。 这道题由优先制作这一关键词可知是一道拓扑排序的题,于是我想用邻接矩阵,但是我交之后错了,那是因为普通的数组会爆,但我不喜欢写链式前向星,故使用了vector的二维数组。 但是这道题比较特殊,由教练提醒,这道题需要跑反 ......
题解 菜肴 P3243 3243 2015

CF1673C Palindrome Basis の 题解

这道题非常板,如你所见,大概思路是打表回文数加上完全背包求方案数,但是需要注意取余问题。 从英文题面上(题目翻译没有给出数据范围)可以看到 \(1 \leq n \leq 4 \cdot 10 ^ {4}\),所以只要用完全背包来预处理这一范围即可。如果你还是不懂,可以去搜完全背包字样并学习该算法。 ......
题解 Palindrome 1673C Basis 1673

AT_gigacode_2019_b 採用面接 の 题解

这道题比较水。大概思路是使用循环,之后检查 \(a_{i}\) 是否达到 \(x\) 且 \(b_{i}\) 是否达到 \(y\) 且 \(a_{i} + b_{i}\) 是否达到 \(z\)。 代码如下。 #include <iostream> namespace io{ template <ty ......
题解 AT_gigacode gigacode 2019 AT

CF1907G Lights 题解

每次按一个开关就会改变两盏灯的状态,考虑把这种关系在一张图上表示出来。在图上把所有可能同时改变状态的灯连边,让亮灯的点的值为 \(1\),不亮的为 \(0\),那么每次按灯就是把连接一条边的两点的值都异或上 \(1\),最终要让所有点的值都为 \(0\)。 由于每个点的度都大于 \(1\) 且图上共 ......
题解 Lights 1907G 1907 CF

CF1904B Collecting Game 题解

每次在数组中找大于 \(s\) 的数太麻烦了,将数组排序后,每次能删去的数一定是一个前缀,就只需要对于每个 \(i\),考虑它能删去的数的右端点在哪。设 \(r_i\) 为初始删除 \(i\) 能删到的数的右端点的编号,那么有: \[r_i= \begin{cases} n & \text{ if ......
题解 Collecting 1904B 1904 Game

CF1907E Good Triples 题解

题意:求出 \(a+b+c=n\) 且 \(d(a)+d(b)+d(c)=d(n)\) 的三元组 \((a,b,c)\) 的个数。其中 \(d(x)\) 等于 \(x\) 的各位数位之和。 根据直觉和样例解释可以知道,如果 \(a+b+c\) 没有发生进位,那么三元组 \((a,b,c)\) 一定合 ......
题解 Triples 1907E 1907 Good

题解 P9963【[THUPC 2024 初赛] 前缀和】

注意到,\(x_i\) 取 \(k\) 的概率是 \(p(1-p)^{k-1}\),是和为 \(1\) 的等比数列,下面考察数列前缀和的性质。 不难想到,概率每次乘以 \(1-p\) 像是概率的分步乘法,每一步正是加一的操作。于是可以得到如下转化:初始时 \(S=0\),每一时刻 \(S\) 先增加 ......
题解 初赛 前缀 P9963 THUPC

题解 P9963【[THUPC 2024 初赛] 前缀和】

注意到,\(x_i\) 取 \(k\) 的概率是 \(p(1-p)^{k-1}\),是和为 \(1\) 的等比数列,下面考察数列前缀和的性质。 不难想到,概率每次乘以 \(1-p\) 像是概率的分步乘法,每一步正是加一的操作。于是可以得到如下转化:初始时 \(S=0\),每一时刻 \(S\) 先增加 ......
题解 初赛 前缀 P9963 THUPC

Codeforces Round 916 (Div. 3)

目录写在前面ABCDE1/E2FG1G2写在最后 写在前面 比赛地址:https://codeforces.com/contest/1914。 第二天没早八打个 div3 休闲娱乐保持下手感,然而 div3 都 AK 不了了,纯纯废物一个,天天上大学导致的。 唉,一学期碰上好几个 byd 恼弹老师, ......
Codeforces Round 916 Div

P4147 玉蟾宫 题解

P4147 玉蟾宫 题解 题目链接 P4147 玉蟾宫 简要思路 很容易发现,这是最大子矩形问题的板子题。 定义一个二维的 \(dp\) 数组,\(dp_{i,j}\) 代表以坐标 \((i,j)\) 为底的线段,最长能向上延伸多少个单位长度的 F(如果自身为 R,值则为 \(0\))。 对于 \( ......
蟾宫 题解 P4147 4147

Educational Codeforces Round 160 (Rated for Div. 2)

A. Rating Increase 字符串处理 #include<bits/stdc++.h> using namespace std; void solve(){ string s; cin>>s; int n=s.size(); s=" "+s; for(int i=1;i<=n-1;i++) ......
Educational Codeforces Round Rated 160