codeforces round 860 div

Codeforces Round 903 (Div. 3) E. Block Sequence(DP)

Codeforces Round 903 (Div. 3) E. Block Sequence 思路: 设dp[i]为当i~n为完美的最少删除次数 dp[n]=1,dp[n+1]=0; 从后至前对于dp[i]更新 若直接删除当前点,则为 dp[i+1]+1 若不删除 则为 min(dp[i+a[i] ......
Codeforces Sequence Block Round 903

Codeforces Round 903 (Div. 3)

D题被hack了 哭了 第一题简单的只用把字符串重复的同时尝试匹配,然后判断就好了,只是需要一点代码能力 第二题,也很简单最多剪断3次,就先从小到大排序,然后用最小的,看看大的是他的几倍,如果不是几倍的关系就不可能完成,如果是就算要几次就好了 第三题,也很简单,很明显,对于一个格子,在它旋转90度后 ......
Codeforces Round 903 Div

Codeforces Round 672 (Div. 2) A. Cubes Sorting

有 \(n\) 个方块,第 \(i\) 个方块重量为 \(a_i\) 。需要使方块按照非降序排列摆放。在每一步操作中,可以交换任意相邻的两块方块。询问可以使所有方块按照非降序排序的最小操作数 \(p\) 是否 \(\frac{n \cdot (n - 1)}{2}\) 。 考虑一个事实,对于任意第 ......
Codeforces Sorting Round Cubes 672

Codeforces Round 674 (Div. 3) B. Symmetric Matrix

有 \(n\) 块 \(2 \times 2\) 的瓷砖,瓷砖上的每个方格包含一个数字,每种瓷砖都有无数种。现在需要用所给瓷砖构造一个 \(m \times m\) 的方形矩阵 \(a\) 满足: 每块瓷砖都在方形矩阵内 瓷砖之间不能存在覆盖 \(a_{i, j} = a_{j, i}\) 。 输出 ......
Codeforces Symmetric Matrix Round 674

Codeforces Round 903 (Div. 3)

D. Divide and Equalize 思路: 1.某个数除以x,某个数再乘以x,可发现数组总的乘积没有变化 2.也就是说,要使数组中的每一个元素相同,它们总的质因子应该满足:某个质因子的数量%n==0 E. Block Sequence 简单的dp dp[i],表示删除这个数字后的最小删除次 ......
Codeforces Round 903 Div

Codeforces Global Round 11 A. Avoiding Zero

给一个大小为 \(n\) 的数组 \(a_1, a_2, \cdots, a_n\) 。你需要构造一个大小为 \(n\) 的数组 \(b\) 且满足以下条件: 数组 \(b\) 是数组 \(a\) 的冲排列 对于 \(\forall k =1, 2, \cdots, n\) , \(\sum_{i= ......
Codeforces Avoiding Global Round Zero

Educational Codeforces Round 96 (Rated for Div. 2) A. Number of Apartments

有三种建筑:三室厅、五室厅、七室厅。每个房间严格有一扇窗户。现在有 \(n\) 扇窗户,询问完全用完这些窗户的情况下,\(3, 5, 7\) 室厅各有多少间。输出任意一种答案,或者回答不可能。 假设一定有解,显然可以选择 \(mod\) 任意一个数贪心,不妨选最小的 \(3\) 。假设答案为 \(a ......

Codeforces Round 677 (Div. 3) C. Dominant Piranha

有 \(n\) 只水虎鱼在水族馆,大小为 \(a_1, a_2, \cdots, a_n\) 。 一只水虎鱼被称为是主导的,当它可以吃掉水族馆中其他所有水虎鱼。其他水虎鱼不会有任何行动。 一只水虎鱼只可以吃掉当前与它相邻并且体型严格比它小的水虎鱼。当大小为 \(x\) 的水虎鱼吃掉大小为 \(y\) ......
Codeforces Dominant Piranha Round 677

Codeforces 512D. Fox And Travelling 题解

Fox And Travelling 题面翻译 给定一张 \(n\) 个点 \(m\) 条边的无向图。 一个点只有当与它直接相连的点中最多只有一个点未被选择过时才可被选择。 询问对于每个 \(k \in [0,n]\),有序选择 \(k\) 个点的方案数。 \(n \le 100\),\(m \le ......
题解 Codeforces Travelling 512 And

Codeforces Round 684 (Div. 2) B. Sum of Medians

定义 \(median\) 是一个非降序数组中第 \(\lceil \frac{n}{2} \rceil\) 的数。数组从 \(1\) 开始标号。 给两个数 \(n\) 和 \(k\) ,并给出一个长为 \(nk\) 的数组 \(a\) 。 需要分出为 \(k\) 个大小为 \(n\) 的数组,每个 ......
Codeforces Medians Round 684 Div

Codeforces Round 680 (Div. 2, based on Moscow Team Olympiad) B. Elimination

一个比赛有一百人进入决赛,但是需要经过两轮初赛的选拔。初赛的最终结果由两场初赛产生,不幸的是初赛的最终排名被丢失了。 在每场初赛中,参赛者的排名按非升序排序。当两位参赛者的成绩一样,参赛编号更小的靠前。 现在只知道如下信息: 第一场初赛中,第一百名的成绩为 \(a\) 。且第一场初赛中前一百名的选手 ......
Elimination Codeforces Olympiad Moscow Round

Codeforces Round 685 (Div. 2) B. Non-Substring Subsequence

对于一个长为 \(n\) 的 \(01\) 字符串 \(s\) 有 \(n\) 个询问。第 \(i\) 个询问被 \(l_i, r_i\) 描述 \(1 \leq l_i < r_i \leq n\) 。 对于每个询问,你需要确定 \(s\) 中是否存在一个子序列等同于子串 \(s[l_i \cdo ......

Codeforces Round 690 (Div. 3) C. Unique Number

给一个正整数 \(x\) ,需要构造一个最小的正整数 \(n\) 使得 \(\sum digt(n) = x\) ,并且 \(\forall i \neq j, digt(n)_i \neq digt(n)_j\) 。 首先观察到 \(0\) 没有贡献,且会增加位数,所以不能有 \(0\) 。 由于 ......
Codeforces Number Unique Round 690

Codeforces Round 695 (Div. 2) A. Wizard of Orz

有 \(n\) 个数位板摆放成一条直线,每个数位板可以显示 \(0 \sim 9\) 的数字。最开始数位板显示的是 \(0\) 。每秒数位板上的数字都会加 \(1\) , \(9\) 的下一个数字是 \(0\) 。当一个数位板被暂停,它上面的数字将会定格在当前秒。 你必须对某个数位板执行一次暂停,在 ......
Codeforces Wizard Round 695 Div

Codeforces Round 903 (Div. 3)

A. Don't Try to Count 解题思路 我们发现当 \(x.size() < s.size()\) 的时候,我们必须要让 \(x+=x\),当 \(x.size() \ge s.size()\) 的时候,我们只要此时判一下 \(x\) 中是否存在子串 \(s\),存在则马上输出答案,否 ......
Codeforces Round 903 Div

Educational Codeforces Round 156 (Rated for Div. 2) A-E

A题签到题 分余1 余2 余0讨论 #include<bits/stdc++.h> using namespace std ; #define maxn 400100 #define int long long int read(){ int ans = 0 , f = 1 ; char ch = ......
Educational Codeforces Round Rated 156

【牛客周赛】round14赛后总结

碎碎念 赛时没出题(真可恶吖)在上晚自习,补了一下。ACD都套着字符串的外壳,差点直接劝退,后来仔细一读发现和字符串没什么关系...大概字符串的用处是为了劝退我这种有些怂字符串的人叭。 A. 小红的环形字符串 题意:对于给定的环形字符串s,可以删除相邻的两个相同字母,问最多删除多少个字符 思路:相邻 ......
round 14

Codeforces Round 694 (Div. 2) A. Strange Partition

给一个长为 \(n\) 的数组 \(a\) 和一个正整数 \(x\) 。你可以执行以下操作任意次:用两个相邻元素的和替换这两个元素。如 \([\cdots, a_i,a_{i+1},\cdots] \rightarrow [\cdots, a_i + a_{i+1},\cdots]\) 。 一个数组 ......
Codeforces Partition Strange Round 694

Codeforces Round 697 (Div. 3) A. Odd Divisor

给一个正整数 \(n\) ,判断 \(n\) 是否存在一个 \(> 1\) 的奇数因子。 只要 \(n\) 的唯一分解下存在除 \(2\) 以外的质因子,则 \(n\) 存在 \(>1\) 的奇数因子。 于是 \(n \neq lowbit(n)\) 则 \(n\) 存在奇数因子。(应用了 \(2^ ......
Codeforces Divisor Round 697 Div

Codeforces Round 697 (Div. 3) B. New Year's Number

给出一个数 \(n\) ,询问能否存在 \(2020x + 2021y = n\) 。 对于方程 \(ax + by = n\) 可以直接解 \(exgcd\) 查询是否有解。 观察到 \(2020x + 2021y = n\) 可以化为 \(2020(x + y) + y = n\) 。不妨定为 ......
Codeforces Number Round Year 697

Codeforces Round 700 (Div. 2) B. The Great Hero

英雄卡初始存在 \(A\) 点力量值和 \(B\) 点生命值。有 \(n\) 张怪物卡,第 \(i\) 张怪物卡拥有 \(a_i\) 点力量和 \(b_i\) 点生命值。任意卡的生命值 \(\leq 0\) 则阵亡。 在任意一步中可以选择一张怪物卡与英雄卡决斗,战斗结束后双方各受到对方力量点数的伤害 ......
Codeforces Round Great Hero 700

Codeforces Round 703 (Div. 2) A. Shifting Stacks

给定 \(n\) 个石堆,第 \(i\) 个石堆高为 \(h_i\) 并且代表这堆石块的个数。在一次操作中你可以将第 \(i\) 堆中的一块石块移动(需要存在石块)到 \(i + 1\) 堆。询问是否可以使石堆的高度严格递增。 显然贪心地让第 \(1\) 堆的高度为 \(0\) 。 然后线性模拟使得 ......
Codeforces Shifting Stacks Round 703

Educational Codeforces Round 105 (Rated for Div. 2) A. ABC String

给一个长为 \(n\) 的字符串 \(a\) ,\(n\) 是偶数,字符串中只包含三种字符 \(A, B, C\) 。规定一个合法的字符串为一个符合入栈规则的字符串。 需要构造一个长为 \(n\) 的括号字符串 \(b\) 。 \(b\) 是一个合法的括号序列 \(\forall 1 \leq i ......
Educational Codeforces String Round Rated

Codeforces Round 899 (Div. 2)

目录写在前面ABCDE1E2写在最后 写在前面 比赛地址:https://codeforces.com/contest/1882。 你知道我要在这里放一首由日本女歌手演唱的歌曲: 一个队友去医院一个队友军训,堂堂单刷! 感觉开场 5h 太浪费了于是找了场 div2,然后 C 不会做卡了 1h,妈的。 ......
Codeforces Round 899 Div

CodeForces 1882E1 Two Permutations (Easy Version)

洛谷传送门 CF 传送门 考虑若是对一个排列进行操作,怎么做。 我们维护一个排列上的值域连续段 \([l, r]\),满足 \(a_{l + 1} = a_l + 1, a_{l + 2} = a_{l + 1} + 1\),以此类推。初始 \(l = r = 1\)。 那么我们每次可以选择往外扩充 ......
Permutations CodeForces Version 1882E1 1882E

CodeForces 1882E2 Two Permutations (Hard Version)

洛谷传送门 CF 传送门 如何评价,模拟赛搬了一道,前一天晚上代码写了一半的题。 考虑如何让操作次数最小。发现直接做太困难了。根本原因是,一次操作对序列的影响太大了。考虑做一些转化,减少一次操作对序列的影响。 仍然先考虑一个排列怎么做。 不知道为什么可以想到在排列前面添加特殊字符 \(0\) 变成 ......
Permutations CodeForces Version 1882E2 1882E

Codeforces Round 834 (Div. 3)

Codeforces Round 834 (Div. 3) A - Yes-Yes? 思路:判断每种情况即可 #include<bits/stdc++.h> using namespace std; //#define int long long //#define int __int128 #de ......
Codeforces Round 834 Div

CodeTON Round 5 ( Div1+Div2 ) C. Tenzing and Balls (DP)

CodeTON Round 5 ( Div1+Div2 ) C. Tenzing and Balls 思路:设f[i]为从 1~i 能删去的最多数 f[i] = max( f[i-1] , i - j + 1+ f[j-1] ) ( a[j]=a[i] , 删去i到j , 再加上前 j-1 可删去的 ......
Div CodeTON Tenzing Balls Round

Educational Codeforces Round 156 (Rated for Div. 2) - A B C D

目录A. Sum of Three A. Sum of Three 如果说给定的数为 n 如果 \(n \le 6\) 或 \(n = 9\) 时,无法分解 如果 $n %% 3 != 0 $ 时,可以 ......
Educational Codeforces Round Rated 156

Educational Codeforces Round 156 A-D

A. Sum of Three 思路1: 1.把数拆成1,2,n-3 2.如果(n-3)%3==0,那么拆成1,4,n-5,可证明n-3如果可被3整除,那么再左移两位一定除不尽 思路2: 1.如果n是奇数,那么可取一个数为2,其他两数为相邻数,如果两数其中一位被整除,那么两者往外走 2.如果n为偶, ......
Educational Codeforces Round 156 A-D