题解codeforces round 879
【题解】P4363 [九省联考 2018] 一双木棋 chess
原题链接 题目描述 菲菲和牛牛在一块 $n$ 行 $m$ 列的棋盘上下棋,菲菲执黑棋先手,牛牛执白棋后手。 棋局开始时,棋盘上没有任何棋子,两人轮流在格子上落子,直到填满棋盘时结束。 落子的规则是:一个格子可以落子当且仅当这个格子内没有棋子且这个格子的左侧及上方的所有格子内都有棋子。 棋盘的每个格子 ......
Codeforces Round 867 (Div. 3)
Codeforces Round 867 (Div. 3) A - TubeTube Feed #include<bits/stdc++.h> using namespace std; typedef pair<int,int>PII; typedef pair<string,int>PSI; co ......
BUAACTF2023 Writeup题解 by Joooook
BUAACTF2023 Writeup by Joooook 目录 Misc Which Element chatgpt zhuzhu zhuzhu's revenge Screenshot carzymaze MC Crypto Block Cipher Math KeyExchange Web ......
第十三届蓝桥杯c++b组国赛题解(还在持续更新中...)
试题A:2022 解题思路: 有2022个物品,它们的编号分别是1到2022,它们的价值分别等于它们的编号。也就是说,有2022种物品,物品价值等于物品编号。 从2022个物品种选取10个物品,满足10个物品的价值之和为2022,用f[i][j][k]表示前i个物品里选择j个物品,价值之和为k的方案 ......
Codeforces Round 866 (Div. 1) C. The Fox and the Complete Tree Traversal (构造)
传送门 题目大意: ** 给定一个有n个点的树,我们可以任意选择一个点作为起点,这个点可以跳到跟自己距离为1或者距离为2的点,已经到达的点不能再到达(最终必须回到起点),询问是否存在一种方案可以从一个点出发经过所有的点最终再回到这个点来。** ** 输入一个整数n。紧接着输入n-1条边。** 大致思 ......
Codeforces Round 847 (Div. 3) G.Tokens on Graph (构造)
传送门 题目大意 ** 给定一个无向图,我们定义图中有四种点,一种是黑色的点表示终点,并且黑色的点始终是1号点,一种是红色的点,一种是灰色的点,最后一种就是没有颜色的点。** ** 游戏规则:我们必须移动任意一个灰色的点到相邻的点上,如果灰色的点移动到了红色的点上,那么我们可以移动其他灰色的点继续上 ......
【题解】XX Open Cup, GP of Moscow
// created on 23.03.26 A. Alice and Bob 对于链上的情况,异色点是一定不会选择走进同色段的(长度不小于 $2$),因为一定不优。所以,可以倒着 DP,求助每个点的优势步数(即走多少到同色段的最后,然后接下来是黑白相间的链;链过后如果还是同色,就再 $+1$,表示 ......
【题解】XXI Open Cup. GP of Tokyo
// created on 23.04.18 A. Ascending Matrix 先不考虑 $a_{R,C}=V$ 的限制,考虑原问题,我们要找到 $k-1$ 条值域轮廓线(起点 $(n,0)$ 终点 $(0,m)$),使相互不越过。将第 $i$ 条向下、右平移 $i-1$ 格,变成了路径不交问 ......
Hackpack 2023 逆向Re部分题解
Hackpack2023-2023/4/15 https://ctf2023.hackpack.club/challenges 做了2题出来,其实是一题,第一题是手动逆向,第二题是脚本自动逆向 主要是学习到了nclib包使用 使用说明 https://nclib.readthedocs.io/en/ ......
2022CCPC威海站 铜牌题解 A C D E G I J 补题
A //木桶效应 #include <bits/stdc++.h> using namespace std; #define int long long const int N = 2e5 + 10; map<string, int> cham; pair<string, int> player[N ......
JOISC2016 题解
仍然是没有做通信题。 JOISC2016 Day1 Matryoshka 俄罗斯套娃 转化错了,转化成上升子序列了,然后就变成了区间 LIS。 实际上是 LDS,那么就可以直接做了。 https://qoj.ac/submission/99648 JOISC2016 Day1 Memory2 神经衰 ......
LG3783 题解
题意 传送门 给定一张有向图,每条边上有一个边权以及一个字符串。 一条有向路径的长度为这条路径上每条边的边权之和+按照路径的顺序将这些边上的字符串排成一列,相邻两个串的 $\text{lcp}$ 长度之和。 求 $1$ 号点到其他店的最短路。 用所有边上的字符串构造字典树,保证其大小 $\le 2\ ......
Codeforces Round 867 (Div. 3)
A. TubeTube Feed #include <bits/stdc++.h> using namespace std; int main() { int q; cin >> q; while (q--) { int n, t, res = -1, id = -1; cin >> n >> t; ......
Educational Codeforces Round 147 (Rated for Div. 2)
Preface 补题 这周比赛挺少,不过后面可能就很少有时间补以前的比赛了的说 现在除了要做学校的集训专题外,还要刷一下蓝桥杯国赛的题,可以说是很忙碌了 而且由于JAVA的期末考试要来了,为了熟悉下语法以后补题的时候前面的题目可能会用JAVA来写(其实我写的JAVA看起来和C++真没啥区别) A. ......
Codeforces 1801G - A task for substrings(ACAM)
首先,显然答案等于 $[1,r]$ 中符合条件的子串个数减去 $[1,l-1]$ 中符合条件的子串个数减去跨 $l-1,l$ 的子串个数。前面两部分的处理是容易的,直接建出 ACAM 然后每加入一个字符就在上面条转移边即可。 考虑怎么处理跨中间的贡献。相当于我们要找 $[1,l-1]$ 的一段后缀与 ......
DfC 专项训练题解1
A. Burglar and Matches - 900 题目大意 一个窃贼要去偷火柴,最多偷 $n$ 盒,店里有 $m$ 种火柴,每种火柴有 $a_i$ 盒, 每盒有 $b_i$ 根火柴,问最多能偷走多少根火柴, 解题思路 贪心签到题,按照每盒的火柴数排序,优先偷火柴多的盒即可。 AC Code ......
SMU Spring 2023 Trial Contest Round 9
A. Wrong Subtraction 在k次操作里, 将n的最后一位数减1,如果是0就去掉,模拟一下就好了. #include <bits/stdc++.h> //#define inf 0x3f3f3f3f #define endl '\n' #define int long long usi ......
SMU Spring 2023 Trial Contest Round 10
SMU Spring 2023 Trial Contest Round 10 A - Remove Duplicates #include<bits/stdc++.h> using namespace std; typedef pair<int,int>PII; typedef pair<strin ......
Codeforces 1781G - Diverse Coloring(构造)
vp 时候想到大致思路了,但是死活调不对,赛后套取 cf 的数据调了好久才过/ll 首先直觉告诉我们答案不会太大。稍微猜一猜可以猜出除了四个点的菊花之外答案都是 $n\bmod 2$,下面我们来通过构造证明这件事情。 首先,链的情况是 trivial 的,直接根据奇偶性间隔染色即可。如果不是链,那么 ......
Educational Codeforces Round 147(A~E)(补提记录)
Educational Codeforces Round 147(Rated for Div. 2) A: 题意: 每个问号都能被替换成0~9,求替换每个问号后所能的到的数的数量 注:所得到的序列不能有前导0 思路:先判断第一位是什么,作为特判,为0,则不能得到任何数输出0,为?则答案×9再依次枚举 ......
『STAOI』G - Round 2 半个游记
很刺激。 2023.3.2 23:17 第一次过审。 2023.3.5 00:02 第一次打回。 原因是背锅人的链接又双叒叕挂错了((( 2023.3.6 21:20 第二次过审。 2023.3.8 邀请到国际著名设计师 FoZwoK 重新设计头图。 这是 base64。 2023.3.8 撤下比赛 ......
ABC267G Increasing K Times 题解
做这道题,很有感悟,发篇文。 先给数列从小到大排个序。 接下来设 $f_{i,j}$ 表示前 $i$ 个数的排列形成 $j$ 个上坡的方案数。 接下来考虑转移,分为插入第 $i$ 个数后增加上坡和不增加上坡两种情况。 对于不增加的情况,有三种可能: 第 $i$ 个数插入在了数列的最前端,有 $1$ ......
2021牛客OI赛前集训营-提高组(第二场)第三题 树数树题解
题目描述 牛牛有一棵 $n$ 个点的有根树,根为 $1$。 我们称一个长度为 $m$ 的序列 $a$ 是好的,当且仅当: $\forall i \in (1,m]$,$a_i$为 $a_{i−1}$的祖先或 $a_{i−1}$是 $ai$的祖先 $\forall 1 \leq i \lt j \le ......
2021牛客OI赛前集训营-提高组(第三场) 第二题 交替 题解与结论证明
题目描述 一个长度为 $n$ 的数组$A$,每秒都会变成一个长度为 $n − 1$ 新数组 $A'$,其变化规 则如下: 若当前数组 $A$ 的长度 $n$ 为偶数,则对于新数组 $A'$ 的每一个位置 $i(1 ≤ i < n)$来说,$A'[i]=A[i]+A[i+1]$ 若当前数组 $A$ 的 ......
2022年9月8日模拟赛题解与总结
菜死了,被czn踩了8分暴力分 水分没水到/kk 整体第四,初二第一,竞赛班第二 主要是切了T4翻盘的 T1 祖先 ABC263B 一道简单的DP,随便做做跑路了 代码长这样 #include <stdio.h> int n, x, f[55]; int main() { scanf("%lld", ......
Codeforces Round 867 (Div. 3)(A-C)
#A. TubeTube Feed 签到题 ##思路 往后走,每次减一,记录当前所能得到最大的bi ###完整代码 #include<bits/stdc++.h> using namespace std ; #define ll long long inline ll read(){ ll s=0 ......
【SD集训】20230425 T2 差(difference) 题解 CF1500F 【Cupboards Jumps】
大家可以猜猜看为什么有两个标题,因为这个因本文就不设密码了,被 He_ren 的原题创到了。 吐槽一下,He_ren 甚至出原题还用脚造数据,虽然数据确实比较难造。不过那两个 $O(n^2)$ 老哥好像都没最后将所有数调整成非负,遗憾 20。 有人场切 * 3500 却没过签到题,我不说是谁。 题目 ......
SMU Spring 2023 Trial Contest Round 10
A. Remove Duplicates #include <bits/stdc++.h> using namespace std; #define int long long int read() { int x = 0, f = 1, ch = getchar(); while ((ch < ' ......
Codeforces 103446A - Strange Functions(凸包)
首先,根据 $\arctan$ 函数的性质,一个函数在 $x$ 处的取值是所有 $n$ 个函数中最小的,当且仅当 $|k_i\sec(x-a_i)|$ 是所有 $n$ 个函数中最小的。 和差角公式把 $\sec$ 拆开得到 $|\dfrac{k_i}{\cos(x)\cos(a_i)+\sin(x) ......
Codeforces 1804G - Flow Control(势能分析)
成功把这道小清新题做成了一道大数据结构题,我的评价是我是小丑。 首先显然要离散化对时间轴扫描线。这个除以 $2$ 下取整的操作显然启示我们往势能的方向思考,也就是我们希望能够找到某个变量,使得这个变量的均摊变化次数在可接受范围内。但是直接以每个元素的值为势能好像也不太对,因为一次全局除以 $2$ 之 ......