题解1545b cf
(持续更新)CF赛后失误总结
## 在CF上比赛中反映出的问题总结 [toc] ### 总是存在的问题: 总想把前面的做对,浪费了宝贵的时间AC后面的 ### Educational Codeforces Round 154(8.31) #### 结果(+164) 在比赛中,前面两道题25分钟结束,但是第三题怎么也写不对,能力不 ......
题解 正妹吃月饼
[题目链接](https://www.luogu.com.cn/problem/P2431) 由于每个质量的月饼只有一个,并且质量恰好是2的整数倍,所以考虑将一个质量看成一个二进制位。 那么也就是说,我们要构造一个二进制数 $x$,使得 $x$ 的 $1$ 的个数最多,且满足 $a\le x \le ......
CF797F Mice and Holes 题解
## Description 有一天 Masha 回到家,发现有 $n$ 只老鼠在它公寓的走廊上,她大声呼叫,所以老鼠们都跑进了走廊的洞中。 这个走廊可以用一个数轴来表示,上面有 $n$ 只老鼠和 $m$ 个老鼠洞。第 $i$ 只老鼠有一个坐标 $x_i$ ,第 $j$ 个洞有一个坐标 $y_j$ ......
牛客小白月赛77 C题解 | 小Why的商品归位
[原题链接](https://ac.nowcoder.com/acm/contest/64384/C) 先不考虑车子的容量问题,因为结束位置保证是在起始位置之后的,那我们从前往后扫,发现是可以知道每个点时的车内的商品。 但是现在有了容量限制,我们怎么办呢,如果对于一段,k 都是大于每个点的货物量时, ......
CF1626F A Random Code Problem 题解
## 题意 给定长度为 $n$ 的数组 $a$ 和一个整数 $k$ ,执行下面的代码: ```cpp long long ans = 0; //定义一个初始值为0的长整型变量 for(int i = 1; i typedef long long valueType; typedef std::vec ......
Maximum Diameter 题解
[Maximum Diameter](https://www.luogu.com.cn/problem/AT_abc290_f) ### 题目大意 定义长度为 $n$ 的序列 $a$ 的权值为: - 所有的 $n$ 个点的第 $i$ 个点的度数为 $a_i$ 的树的直径最大值,如果不存在这样的树,其 ......
【题解】Harbour.Space Scholarship Contest 2023-2024 D,E,F(CF1864)
## D.Matrix Cascade ### 题目描述: 有一个大小为$n \times n$的矩阵,由 0 和 1 组成。行的编号从上到下依次为$1$到$n$,列的编号从左到右依次为$1$到$n$。第$x$行与第$y$列交叉处的单元格记为$(x, y)$。 水月想把矩阵的所有元素都变成 0。她可 ......
CF500G New Year Running
# solution 首先求出两条路径 $(A,B)$ $(C,D)$ 的交路径,记作 $(S,T)$ 。 那么假设相遇在某个节点 $u$,相遇的条件可以写成下面的式子: $$k_1t_1+r_1+d_1 s=k_2t_2+r_2+d_2s$$ 其中: $t_1,t_2$ 为周期,$r_1,r_2$ ......
P3913 车的攻击 题解
**因为这道题确实让我学到了一些东西,所以来记录一下** STL中有一个尊贵的宝物,叫做unique,unique的使用要建立已经sort好的前提下,所以我们的思路是对 r 和 c 分别 sort,再用unique去重。 关于unique的原理:unique并未创造一个新的数组,而是将重复部分移至后 ......
CF765E Tree Folding
[题目链接](https://codeforces.com/problemset/problem/765/E "题目链接") ## 题意 给出一颗无根树,你可以钦定一个根,并进行若干次下述操作: * 选择一个点 $v$,以及 $v$ 延伸出去的两条长度相同的路径(两条路径没有重叠的边)。删去其中任意 ......
[AGC051B] Bowling 题解
## 题意 > 有数个大头钉在二维平面上,有四个人从不同的角度观察它们,重叠的点视为一个,是否可能有一个人观察到的大头钉数量远多余其他人? 让我们把大头钉的位置简化为二维坐标上的点。四个人观察的角度如下: * ```A``` 从左往右观察。即所有 $y$ 坐标相同的点是重叠的。 * ```B``` ......
【CF1503A】Balance the Bits(构造)
**题目大意:** *** ```cpp #include using namespace std; typedef long long ll; ll n; char s[200000+10]; char a[200000+10],b[200000+10]; int main(){ ios::syn ......
CF1615F O(n) solution
$O(n)$ 做法,目前 CF 最优解。 首先,考虑如何计算两个串的答案。 把奇数位置的值取反,那每次操作相当于 $01\to10$ 或 $10\to 01$。于是当两个串 $1$ 的个数相等时可以达成。 可以看作若干个 $1$ 在一条链上移动到新的位置。答案为距离之和,把移动贡献均摊到每条边上,那 ......
【题解】Educational Codeforces Round 154 A-E(CF1861)
感觉很不在状态啊,竟然没做出来 E。 ## A.Prime Deletion ### 题目描述: 质数是一个正整数,它正好有两个不同的正除数 $1$和整数本身。例如,$2$、$3$、$13$和$101$是质数;$1$、$4$、$6$和$42$不是质数。 给你一个从$1$到$9$的数字序列,其中**从 ......
CF1864D 题解
# CF1864D Matrix Cascade 题解 ## Links [洛谷](https://www.luogu.com.cn/problem/CF1864D) [Codeforces](codeforces.com/problemset/problem/1864/D) ## Descript ......
CF477E Dreamoon and Notepad
# CF477E Dreamoon and Notepad key:分类讨论;贪心;拆贡献、放缩等思想。 ## Solution ~~简要~~ 写一下分类讨论,防止写代码的时候脑子不清晰。参考了 [这篇](https://www.luogu.com.cn/blog/_post/567771) 题解。 ......
【CF1542C】Strange Function(数论)
**题目大意:** *** ```cpp #include using namespace std; typedef long long ll; const ll mod=1e9+7; ll n; ll lcm(ll x,ll y){ return x/__gcd(x,y)*y; } int mai ......
CF1174E Ehab and the Expected GCD Problem 题解
## 题意 对于一个排列 $p$,定义 $g$ 为 $p$ 的前缀最大公约数序列,即 $g_i = \gcd\limits_{j = 1}^{i} p_j$。定义 $f(p)$ 为 $g$ 的元素种类数。 给定 $n$,求长度为 $n$ 的且使得 $f(p)$ 取最大值的排列个数,对 $10^9 + ......
CF997E Good Subsegments
## 简要题意 一个好区间是其中数在值域上连续的区间,给定 $n$ 的排列,每次给定一个区间,问其中有多少好的子区间。 数据范围:$1\le n\le 120000$。 ## 做法 只有整体询问的版本是 Cupboard Monsters。值域上连续当且仅当区间最大值减最小值等于区间长度,考虑维护最 ......
【CF1327C】Game with Chips(构造)
**题目大意:** *** ```cpp #include using namespace std; typedef long long ll; ll n,m,k; ll sx[200+10],sy[200+10],fx[200+10],fy[200+10]; int main(){ ios::sy ......
CF383E Vowels
[题目链接](https://codeforces.com/problemset/problem/383/E) 拿到这题,看到求答案的方式:“平方的异或和”。这是就能想到可能有两种方式统计答案: * 直接按照他所说的去算。 算出每一种情况下的数量平方再取个异或和。 * 拆贡献 既然是平方,就无异于点 ......
CF449D Jzzhu and Numbers
[原题链接](https://codeforces.com/problemset/problem/449/D "原题链接") 首先我们让 $c_s$ 表示有多少 $a_i$ 是 $s$ 的超集,那么有:取与后是 $s$ 的超集的集合个数 $f_s=2^{c_i}$。 再让 $g_s$ 表示有多少集合 ......
CF1860C Game on Permutation
[递推法解决博弈论问题。](https://codeforces.com/problemset/problem/1860/C "递推法解决博弈论问题。") 博弈论问题基本思路是先确定“状态”,即先手必胜或者先手必败。这里定义“必胜/必败”为**走到当前格子的人**的结局(赛时因为搞混了走入的人和走出 ......
CF1288D
看到题目中有很多 $\min,\max$,一眼二分答案。 考虑一个常见的套路:假设我们二分的值是 $mid$,那么我们在判断合法性时把数字矩阵变成 $01$ 矩阵:假若 $a_{i,j}\geq mid$,则赋值为 $1$;否则为 $0$。 用了这个套路后,我们可以把一行中最小值是否 $\geq m ......
CF1712F Triameter 题解
## Description 你有一棵有 $n$ 个点的树,树上的每条边权值都为 $1$。现在有 $q$ 次询问,每次询问一个整数 $x$,并将叶子结点全部相连上权值为 $x$ 的边(操作不会保留)。问每次操作后图的直径是多少。图的直径定义为 $\underset{1\leq uans$ 且 $h_ ......
CF1864B Swap and Reverse
### 题目大意 给定一个长度为 $n$ 的字符串 $s$ 和一个整数 $k$。 你可以进行若干次操作: - 选取一个 $i$($1\le i\le n-2$),交换 $a_i$ 和 $a_{i+2}$ - 选取一个 $i$($1\le i\le n-k+1$),翻转区间 $s_{[i,i+k-1] ......
【题解】Pinely Round 2 D,E,F(CF1863)
## D.Two-Colored Dominoes ### 题目描述: 有一个$n\times m$棋盘,被分成若干小格。棋盘上还有一些多米诺骨牌。每张骨牌覆盖相邻的两个小格(即共用一条边的两个小格),没有两张骨牌重叠。 皮特认为这块棋盘太无聊了,需要涂上颜色。他要把多米诺骨牌的格子涂成黑色和白色。 ......
【CF1528A】Parsa's Humongous Tree(树、动态规划)
**题目大意:** 给定一颗树,每个节点有两个数,为每个节点选择其中一个数,求所有相邻节点所选数之差的绝对值之和。 *** 考虑动态规划。 设$dp_{u,0}$为节点i选择较小的数,以节点$u$为根的子树对答案的贡献的最大值。 设$dp_{u,1}$为节点i选择较大的数,以节点$u$为根的子树对答 ......
CF1863A Channel
## 思路 ~~最开始没看懂题意,还想了会儿。~~ 容易发现,如果某个时刻存在总人数是满的,那么一定所有人都看到了,输出 ```YES```。 否则的话,如果不算减少的人数,总人数超过了 $n$,即认为每次新增的人都是之前没看过的人(虽然最终可能会超过 $n$,不符合情况),这样的话可能所有人都看到 ......