rounding maximum 1857b cf
Codeforces Round 892 (Div. 2)E. Maximum Monogonosity(动态规划,数学)
题目链接:https://codeforces.com/contest/1859/problem/E 题意: 有长度为n的a和b俩个序列,定义f【l,r】 = abs(a【l】-b【r】) + abs(b【l】-a【r】); 给正整数k,求 不相交 的 区间 且 所有 区间的长度 的 和 为 k 的 ......
Codeforces Round 888 (Div. 3)G. Vlad and the Mountains(数据结构,图论)
题目链接:https://codeforces.com/contest/1851/problem/G 大致题意: 给出n个点m条边的无向图,每个点有点权h【i】。从点 i 到 点 j会消耗 h【j】 - h【i】 的能量,如果小于0,那么就是恢复对应绝对值的能量。 进行q次询问,每次询问包含起点s, ......
Codeforces Round 885 (Div. 2)E. Vika and Stone Skipping(数学,质因数分解)
题目链接:https://codeforces.com/problemset/problem/1848/E 大致题意: 打水漂,某人在海岸线以 f (正整数)的力量扔出石头,会在f,f+(f-1),f+(f-1)+(f-2),........,f+(f-1)+.....+2+1,的位置接触水面; 现 ......
Codeforces Round 887 (Div. 1)C. Ina of the Mountain(数据结构,反悔贪心)
题目链接:https://codeforces.com/problemset/problem/1852/C 题意: 给定一个长度为n的序列和正整数k; 每次可以选取任意一个区间,将区间内每个数减1; 如果出现一个数变成0,那么那个数变成k; 问至少操作多少次可以使得每个数变成k; 分析: 将每个数值 ......
Educational Codeforces Round 151 (Rated for Div. 2)E. Boxes and Balls(数学,动态规划)
题目链接:https://codeforces.com/contest/1845/problem/E 题意: 给定长度为n且只含0和1的数组,你可以进行以下操作: 交换相邻的0和1; 给正整数k,问经过k次操作后,会有多少种本质不同的结果; 分析: 如果1比0多,我们可以把他们取反(让0比1多,结果 ......
CF1385 F. Removing Leaves 换根dp
## CF1385 F. Removing Leaves 换根dp ### [题目链接](https://codeforces.com/problemset/problem/1385/F) ### 题意: 给你一棵树,有一种操作,选择k个叶子,若叶子节点的父亲相同,则可删去这k个节点,问你最多能操作 ......
CF231E Cactus
[CF231E Cactus](https://www.luogu.com.cn/problem/CF231E) 点仙人掌的性质:每个点最多只在一个环里。  对于 $u,v ......
CF1864F. Exotic Queries
我 是 傻 逼。 先不管那个限制。如果有一个序列 $a$,怎么求答案? 假设我们一个一个减,那么答案就是序列长度;但是,我们不一定会一个一个减:如果有 $x 点击查看代码 ```cpp #include #define int long long using namespace std; const ......
【牛客周赛 Round 9】C D
https://ac.nowcoder.com/acm/contest/63869#question ### C https://ac.nowcoder.com/acm/contest/63869/C #### 题意 小美定义一个 01 串的权值为:每次操作选择一位取反,使得相邻字符都不相等的最小操 ......
Educational Codeforces Round 119
今天只有3题,有点遗憾,D题几乎一眼切,但是时间不够,分类讨论没写完,vp结束几分钟后写出来。 A题开始还以为要并查集,后面发现只有一个N不行 B题漏写括号WA一发 C题感觉不好写啊,因为直接计算可能会爆,所以要先从后往前,确定边界,然后就是跟普通的填数差不多,二分一下。 又是找串,还得特别小心会不 ......
[CF1830D] Mex Tree
[CF1830D](https://www.luogu.com.cn/problem/CF1830D) 贪心地想,黑白交替染色,这样每条大于1的路径的值都为2。但有些情况不优,树的形态是两棵子树中间由一条边相连,这样的最优方案是这条边上两点染1,其余点染0。 并且我们发现只用把每个同色连通块的贡献算 ......
Codeforces Round 889 (Div. 1)C. Expected Destruction(期望,动态规划)
题目链接:https://codeforces.com/problemset/problem/1854/C 大致题意: 有一个集合S,和一个上界m; 现在每秒钟可以进行一次如下操作: 1:等概率的选取S中的一个元素x; 2:将x从S中移走; 3:如果x+1不大于m并且x+1不在S中,那么添加x+1在 ......
Codeforces Round 885 (Div. 2) F. Vika and Wiki(数学,倍增)
题目链接:https://codeforces.com/problemset/problem/1848/F 大致题意: 长度为n(n是2的幂次),每轮让a【i】 = a【i】^a【i%n + 1】,(^为异或)问需要操作多少次后可以使得每个数为0; 解题思路: 我们来观察: 第一次相当于:a【i】 ......
Codeforces Round 889 (Div. 1) B. Earn or Unlock(dp,bitset)
题目链接:https://codeforces.com/problemset/problem/1854/B 题目大致题意: 有n张卡牌从上到下堆叠,每张卡片有锁或不锁俩种状态,一开始第一张是不锁的; 对最上面的卡牌,如果他是不锁的状态,那么可以进行俩种操作: 1:从上到下,将v张被锁的卡牌解锁; 2 ......
Codeforces Round 890 (Div. 2) supported by Constructor Institute D. More Wrong(交互,分治)
题目链接:https://codeforces.com/contest/1856/problem/D 大致题意: 这是一道交互题,有1~n的排列p,对于每次询问,你可以花费(R-L)2的代价去得到区间【L,R】之内的逆序对的个数, 你需要在5n2的代价内得到n的位置。 初步思路: 首先我们来思路,在 ......
Educational Codeforces Round 152 (Rated for Div. 2)E. Max to the Right of Min(数据结构,分治)
题目链接:https://codeforces.com/problemset/problem/1849/E 大致题意: 长度为n的序列,求有多少个区间满足区间最大值在区间最小值的右边? 解题思路: (此题有使用线段树等其他做法,本处使用的是单调栈做法) 我们先求出每个a【i】 的左边的比他小的LMI ......
P9580 「Cfz Round 1」Wqs Game 题解
[题目链接](https://www.luogu.com.cn/problem/P9580) 挺好的博弈论题,这是一个跟官方题解不太一样的做法。 遇到这种组合游戏可以先考虑逆推胜负,把握一下规律,我们先从一个区间的胜负判断开始入手。 考察区间中最后一个数字的从属关系,如果它属于弈,因为 $a_i>0 ......
Codeforces Round 894 (Div. 3)
**A**. $n$ 个长为 $m$ 的字符串,判断存在 $i, j, k, l$ 有 $1 \leq i view ``` #include #define REP(i, A, N) for (int i = (int)A; i = (int)A; --i) typedef long long l ......
CF1763F Edge Queries
[CF1763F Edge Queries](https://www.luogu.com.cn/problem/CF1763F) 圆方树板子题,~~这题真的有3000吗~~。 首先想到的是缩边双,但是以下情况边双不好处理:  给你一个整数$n$,你可以进行最多$1000$次操作,使得$n$减去它的一个因数,要求每种减数至多出现两次 我们考虑先把$n$进行质因数分解,得到质因数序列$P$ $\{ ......
P9578「Cfz Round 1」Permutation
## 思路 我们需要尽量让相邻两个数的和的最大值减最小值最小。 先思考如何让最大值最小。 对于 $n$,两侧最小也必须要放 $1$ 和 $2$。所以最大值至少也是 $n+2$。 同时,我们再思考 $1$ 周围能摆什么,因为不能让最小值太小,我们需要放比较大的,也就是 $n$ 和 $n-1$。 这样来 ......
P9577「Cfz Round 1」Dead Cells
## 思路 ### Step1.暴力 考虑到数据范围很小,所以可以暴力模拟操作,赛时直接去想更优的情况,倒是没去想模拟,所以这里就不展开了。 ### Step2.有点思维难度的做法 首先发现在过程中,只有乘以 $2$ 和除以 $2$ 的操作,所以向上取整的情况只会出现在细胞数量为 $1$ 的情况。 ......
CF1444A Division
## 思路 首先特判特殊情况,若 $p_i$ 本身不可被 $q_i$ 整除,那么 $x_i$ 就直接取 $p_i$ 最大。 否则的话,$p_i=q_i\times k$。所以 $q$ 的质因数,$p$ 都有,并且数量一定大于等于 $q$ 的这个质因数的数量。 那么如果 $x_i$ 的某个质因数个数小 ......
CF1823C Strongly Composite
## 思路 我们可以思考一下什么样子的合数是强合数。 首先一个数可以表示为 $p_1^{c_1}\times p_2^{c_2}\times \cdots \times p_x^{c_x}$。 那么这个数的约数个数为 $s=(c_1+1)\times (c_2+1)\times \cdots \ti ......
CF1423K Lonely Numbers
## 思路 因为对于 $\gcd(a,b)$,$\frac a{\gcd(a,b)}$,$\frac b{\gcd(a,b)}$ 中 $a$ 和 $b$ 是等价的,可以交换的。所以我们先令 $a>b$。 令 $\gcd(a,b)=d$,因为 $\frac a{\gcd(a,b)}$ 有除法,所以我们 ......
CF1862G The Great Equalizer
## 思路 对于一个数组,每次操作会缩短排序后的数组的相邻两个数的差距,所以总共会执行 $k$ 次操作,其中,$k$ 为排序后的数组的相邻两个数的最大差距。 因为每次操作都会对最大数加 $1$,所以答案就是 $\text{数组中的最大数} + \text{排序后的数组的相邻两个数的最大差距}$。 因 ......
CF1862F Magic Will Save the World
## 思路 假设总共耗时是 $s$ 秒,那么最多可以消灭的总生命值是 $s\times(w+f)$。 所以我们可以先求出所有怪物的生命值之和 $sum$,那么,至少需要时间 $t=\lfloor \frac{sum}{w+f} \rfloor$。 然后我们可以算出用这些时间最多可以用水魔法消灭的生命 ......
CF3C Tic-tac-toe
AC 后逛了逛题解,发现好像自己的代码比大佬都短很多? ## 思路 数据范围很小,先暴力求得 ```X```,```0```,```.``` 的个数,然后暴力求得连着的三个 ```X```,```0``` 的个数。 然后,我们来分类讨论: - 非法的情况一定优先判断,只有不非法才可能是其他情况,那么 ......