题解codeforces div round

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

THUPC 2024 初赛部分题解和游记

我们队赛时被 J 题创死了 awa 离做出来差一个剪枝,而且赛后试了试不加剪枝甚至能过…… 6 题离场。 一些题解 J 套娃 先对 \([0,n]\) 中每个数 \(k\) 分别考虑。 假设总共出现了 \(c\) 次 \(k\),第 \(i\) 次出现的位置是 \(pos_{i}\),(令 \(po ......
题解 初赛 游记 部分 THUPC

题解 Gym 102341B【Bulbasaur】/ SS231107C【爬梯高手】

题解 SS231107C【爬梯高手】 撞原了,好耶!Gym 102341B 顺便把我的变异加强版爆标了!!! problem 有一个 \(n*m\) 个点的有向分层图,共有 \(n\) 层,每层 \(m\) 个点,每条边一定是从第 \(i\) 层连向第 \(i+1\) 层。 定义 \(f(i,j)\ ......
爬梯 题解 Bulbasaur 102341B 231107C

华中师范大学2023新生赛 I 镜面折跃 题解

Link 华中师范大学2023新生赛 I 镜面折跃 Question 懒得转述了 Solution 确实是一道好题 可以把一节方格拆成 \(4\) 个点,每个点分别代表从四个方向射进这个节点的光线 如果没有镜子,那么就左侧节点的右侧连接自己的右侧,以此类推 如果有镜子,那么顺着镜子方向建边,边权为 ......
题解 镜面 师范 新生 大学

U388010 题解

U388010 题解 link:https://www.luogu.com.cn/problem/U388010 Sol 首先,我们看到这一条件: 对于每一个 \(1 \le i \le n\),\(1 \le j \le n\),\(i \neq j\) 满足 \(a_i \bmod a_j \n ......
题解 U388010 388010

Codeforces Round 914 (Div. 2)A~D

A. Forked! 题意:有骑士,国王,王后,给出骑士的攻击方式,骑士的攻击方式类似象棋中的马,一个方向长度为1,一个方向长度为2,有8个位置,骑士的两方向攻击长度为a,b,当a,b不等的时候,有8个位置,相同则有4个位置,询问骑士能同时攻击到国王和王后的位置有几个(采用多组输入形式) 范围:给出 ......
Codeforces Round 914 Div

Codeforces Round 916 (Div. 3)

A. Problemsolving Log map枚举字母 #include<bits/stdc++.h> using namespace std; void solve(){ int n; string s; cin>>n>>s; int ans=0; s=" "+s; map<char,int> ......
Codeforces Round 916 Div

Codeforce Round 916(div3)

Codeforces Round 916(div3) [Problem - A - Codeforces]:Problemsolving Log A.题 直接看样例进行分析,发现每一次出现的字符代表着用了1分钟来看这道题,每道题都有固定的解题时间,只要达到了这个解题时间,就可以将这题解出来 , 答案 ......
Codeforce Round div3 916 div

Codeforces Round 916 (Div. 3)(A~E2)

A 统计一下每个字母的出现次数然后输出即可 #include <bits/stdc++.h> #define rep(i,a,b) for(register int i = (a); i <= (b); ++i) #define fep(i,a,b) for(register int i = (a) ......
Codeforces Round 916 Div E2

CodeForces 1148H Holy Diver

洛谷传送门 CF 传送门 从套娃过来的。 首先考虑如何方便地描述所有子区间的 \(\text{mex}\)。这是一个经典套路,考虑扫描线,扫右端点 \(R\),维护一些极长的段 \([l, r]\) 表示 \([l, R], [l + 1, R], \ldots, [r, R]\) 的 \(\tex ......
CodeForces 1148H Diver 1148 Holy

CF1914 G Light Bulbs 题解

Link CF1914 G Light Bulbs Question 有 \(2n\) 盏灯摆放在一条直线上,每盏灯有一个颜色 \(a_i\) ,灯的颜色一共有 \(n\) 种,每个颜色的颜色的灯刚好两盏,灯开始都是熄灭的。你选择几盏灯先打开,然后通过以下规则让其他的灯打开 选择 \(i,j\) 是 ......
题解 Bulbs Light 1914 CF

CF Round 916 (Div. 3)

link A 开个桶。 B 因为 \(k \leq n-1\),尝试让 \(a_2\) 到 \(a_{k+1}\) 有贡献,让 \(a\) 的前 \(k\) 项升序排列,剩余项降序排列即可。 C 假设只做前 \(x\) 个任务(\(x \leq k\)),那么答案 \(f_i\) 最大为 \(\su ......
Round 916 Div CF

CF468C Hack it! 题解

题意:给出一个数 \(a\),构造一组 \(l,r\) 使得 \(\sum_{i=l}^r f(i) \equiv 0 \pmod a\)。其中 \(a \leq 10^{18}\),\(l,r\leq 10^{200}\)。 分析: 以下用 \((l,r)\) 表示构造出来的一对 \(l,r\), ......
题解 468C Hack 468 CF

CF1814B Long Legs 题解

建议降黄 令 \(m\) 最后的值为 \(a\),那么此时最佳答案为 \(a-1+ \left \lceil \frac{x}{a} \right \rceil + \left \lceil \frac{y}{a} \right \rceil\),每次加尽量大的 \(m\) 一定最优。 当 \(x, ......
题解 1814B 1814 Long Legs

CF1866B Battling with Numbers 题解

前置知识:如果 \(p=x^a,q=x^b\),那么 \(\gcd(p,q)=x^{\min(a,b)},\operatorname{lcm}(p,q)=x^{\max(a,b)}\)。 对于每个 \(x \in a_i\),令 \(x\) 在 \(Y\) 中的指数为 \(d_i\)(实际上不一定) ......
题解 Battling Numbers 1866B 1866

CF1703E-Mirror-Grid-题解

title: CF1703E Mirror Grid 题解 date: 2022-07-15 11:54:20 categories: - 题解 题目大意 给出一个由 \(0,1\) 组成的矩阵,求最少改变矩阵中的多少个数,使得矩阵旋转 \(0^\circ , 90^\circ , 180^\cir ......
题解 E-Mirror-Grid Mirror 1703 Grid

CF1870B-Friendly-Arrays-题解

title: CF1870B Friendly Arrays 题解 date: 2023-09-20 10:32:12 categories: - 题解 翻译 给出长度为 \(n\) 的序列 \(a\) 和长度为 \(m\) 的序列 \(b\),选出 \(b\) 中的任意个数(可以不选),让 \(a ......

CF1593E-Gardener-and-Tree-题解

title: CF1593E Gardener and Tree 题解 date: 2022-05-27 21:30:48 categories: - 题解 原题面 题意: 给出一个 \(n\) 个点的树,删除 \(k\) 次叶子节点,求剩下的节点数。 思路: 设 \(cnt_i\) 为 \(k\) ......

CF1872C-Non-coprime-Split-题解

title: CF1872C Non-coprime Split 题解 date: 2023-09-18 21:09:14 categories: - 题解 一个很怪的分讨想法。 当 \(l \neq r\) 时,区间内一定有一个偶数。设最大的偶数为 \(x\) ,那么当 \(x > 2\) 时,可 ......

CF1861C-Queries-for-the-Array-题解

title: CF1861C Queries for the Array 题解 date: 2023-09-06 07:53:53 categories: - 题解 因为插入和删除操作都在队尾,所以对序列前缀分析一下: 若一个序列的答案为 YES,那么它前缀的答案也为 YES。(对于没检查过的序列) ......