codeforces
樱落二瓣七里香
我是fw
展开
-
CF1731 C. Even Subarrays(思维+前缀异或和)
【代码】CF1731 C. Even Subarrays(思维+前缀异或和)原创 2023-07-13 21:32:50 · 501 阅读 · 0 评论 -
cf1811D - Umka and a Long Flight(思维)
【代码】cf1811D - Umka and a Long Flight(思维)原创 2023-07-10 15:47:31 · 328 阅读 · 0 评论 -
E - Tree Generator™(线段树+思维)
【代码】E - Tree Generator™(线段树+思维)原创 2023-05-11 00:43:08 · 111 阅读 · 1 评论 -
cf1768 E. Partial Sorting(数学 + 容斥原理)
【代码】cf1768 E. Partial Sorting(数学 + 容斥原理)原创 2023-02-23 18:53:07 · 76 阅读 · 0 评论 -
cf1783 D. Different Arrays(dp)
【代码】cf1783 D. Different Arrays(dp)原创 2023-02-23 17:41:13 · 174 阅读 · 0 评论 -
cf1782 E - Rectangle Shrinking(贪心)
【代码】cf1782 E - Rectangle Shrinking(思维)原创 2023-02-22 15:15:56 · 104 阅读 · 0 评论 -
cf1451 E2. Bitwise Queries (Hard Version)(位运算+思维)
的运算优先级小于+!原创 2023-02-21 18:33:22 · 92 阅读 · 0 评论 -
cf1777 C. Quiz Master(思维+双指针)
【代码】cf1777 C. Quiz Master(思维+双指针)原创 2023-02-20 13:02:23 · 408 阅读 · 0 评论 -
cf1777 D. Score of a Tree(思维)
【代码】cf1777 D. Score of a Tree(思维)原创 2023-02-20 13:00:52 · 184 阅读 · 0 评论 -
cf1114 E. Arithmetic Progression(交互+随机数)
【代码】cf1114 E. Arithmetic Progression(交互+随机数)原创 2023-02-20 10:43:51 · 89 阅读 · 0 评论 -
cf1792 D. Fixed Prefix Permutations(思维+Trie树)
要求1~n的每个排列 ai 的最大贡献, 对于ai * aj 即将 aj 以 ai的顺序排列, 我们求出aj的位置排列如: 2 4 1 3, p[2, 4, 1, 3] = 3 1 4 2 , 对于p 我们发现, 若存在一个排列aj = [3, 1, 4, 2]那么aj对于ai的贡献即为4, 否则贡献即为aj 与 p 的最长公共前缀, 那么我们可以把每个ai的位置排列求出来, 然后建立trie树, 对于当前排列ai的最大贡献即为ai在树上的最大深度。原创 2023-02-19 14:40:12 · 255 阅读 · 0 评论 -
cf1780 D.Bit Guessing Game(交互+位运算)
【代码】cf1780 D.Bit Guessing Game(交互+位运算)原创 2023-02-18 20:13:08 · 156 阅读 · 0 评论 -
cf1167 B - Lost Numbers(交互题+dfs)
【代码】cf1167 B - Lost Numbers(交互题+dfs)原创 2023-02-18 19:48:58 · 105 阅读 · 0 评论 -
cf1787 D. Game on Axis(思维+建图)
【代码】cf1787 D. Game on Axis(思维+建图)原创 2023-02-17 14:30:23 · 152 阅读 · 0 评论 -
cf1787 E. The Harmonization of XOR(异或)
主要思路为 通过异或交换律, i^j = x, j = i^x, 来找成立得二元组{i, j}原创 2023-02-17 13:07:17 · 251 阅读 · 2 评论 -
cf1778 C. Flexible String(二进制枚举)
【代码】cf1778 C. Flexible String(二进制枚举)原创 2023-02-16 20:29:07 · 151 阅读 · 0 评论 -
cf1778 D. Flexible String Revisit(概率dp+数学)
【代码】cf1778 D. Flexible String Revisit(概率dp+数学)原创 2023-02-16 18:23:16 · 87 阅读 · 0 评论 -
cf1786D. Letter Exchange(贪心)
具体思路就是贪心去凑, 对于iin, 需要出一个i, 要一个w, 即(i, w), 若有要一个i, 出一个w就能形成互补, 即(i, w) (w, i) 互补, 如果没有互补这种情况, 则要中转一次, 即 (i, w) (w, n) (n, i) 这种, 而对于iii, 就是需要转两次, (i, w)一次, (i, n)一次, 转完一次后都和第一种情况符合, 据题意牌面固定, 只可能出现这两种情况, 模拟即可。原创 2023-02-15 14:26:25 · 125 阅读 · 1 评论 -
cf1721 D. Maximum AND (位运算 + 贪心)
给定数组a, b, 定义数组c为, a xor b, 即ci = ai xor bi, 定义f(a,b) 为数组c的AND和, 即f(a, b) = c1&c2&c3&...&cn, 可以对数组b随意排序, 求f(a, b)的最大值。要使f(a, b)最大, 则数组c的AND和最大, 所以看每一位, 只有当c中该位都为1, 才会对答案有贡献....原创 2022-08-28 10:34:40 · 245 阅读 · 0 评论 -
E. Split Into Two Sets(种类并查集+染色法判二分图)
题目链接: 传送门 题目大意: 有n组多米诺骨牌, 每组牌上有两个数字a,b,(1原创 2022-07-14 12:06:49 · 897 阅读 · 0 评论 -
C. Meximum Array(贪心 + 数学mex)
题目大意 : 给定一个长度为n的数组, 每次可以取前k个数求一个mex放入b并删除这k个数, 要求使b的字典序最大的操作方法, 输出b数组思路 : 一道经典的运用mex的性质的题目,可以用一个数组来预处理以下后缀mex(因为每次操作的是前缀mex, 并不会对后缀mex产生影响), 由mex的性质可知, 第 i 位的后缀mex存的即为当前序列能取到的最大的mex, 要使b最大, 则取mex时应取得当前序列得最大mex, 即刚刚求得后缀mex, 所以做法就是跑一遍前缀mex, 当前缀mex取到当前得...原创 2022-05-22 16:06:11 · 367 阅读 · 0 评论 -
CF1680 C. Binary String(贪心)
大致题意 : 给定一个01串, 可对进行一些操作: 从字符串前后删除一些字串(可以为0), 操作的花费为, 删除的字符1的数量与剩余的字符0数量的最大值思路 : 本题有多种做法(最多的为二分和双指针), 这里用一种贪心的做法, 做以下定义:S1表示字符串中 '1' 的数量; lent表示字串t的长度 t1表示任一字串中'1'的数量; t0表示任一字串中'0'的数量.对于操作后的字串t, 答案即为max(t0, S1-t1) = max(t0+t1, S1) - t1 = max(lent,.原创 2022-05-15 00:35:26 · 994 阅读 · 0 评论 -
D. Very Suspicious(数学 + 二分查找)
大致题意 : 对于一个无限的六边形网格进行划线, 要求加的线必须平行六边形的边, 给出查询n问要构造n个小三角型最少要划几条线思路 : 对于n<=6要划的三条线是固定的画法可以特判一下, 之后要加线无非就三种加法, 如样例三条线, 因为要是构造n个小三角型所画的线最小, 所以需要贪心的去画线, 不难发现, 每次画线时只要与上次画线的斜率不一样即1 2 3 1 2 3 1 2 3...这样循环画线即可构造出最多的小三角形, 以此我们可以对n<=1e9的数据进行预处理, 之后用二分查找每...原创 2022-05-10 17:53:44 · 266 阅读 · 0 评论 -
C. Where is the Pizza?(并查集 + 思维)
大致题意 : 有两个长度为n的排列a,b, 以及一个排列c, 排列c满足c[i] = a[i] or b[i];c[i]中有一些固定元素;问排列c有几种构造方法, 答案对1e9+7取模思路 : 观察样例, 不难发现对于排列a,b有一些关联集合, 这里取样例1进行分析a: 1 2 3 4 5 6 7b: 2 3 1 7 6 5 4c: 2 0 1 0 0 0 0可以发现对于集合 {1,2,3}, 当集合中一个元素在a或b中被选取时其他两个元素也会固定如 第一个位置c...原创 2022-05-10 16:15:07 · 415 阅读 · 1 评论 -
CF1675 F.Vlad and Unfinished Business(dfs + 思维)
大致题意 : 给定起点x, 终点y, k个任务点a1...ak, 以及一棵n个点, n-1条边的数, 问经过k个任务点, x->y的最短路思路 : 对 x->y(经过k)的路径(即答案路径) 中所有点进行染色(标记), 表示这些点一定会经过, 答案即为2*(cnt-1)-d[y];因为除了x->y的最短路这条路径的边外,其他的边最少会经过两次(x到任务点后还会经过此边返回去找其他任务点, 注意:只针对不在x->y最短路上的边),由此得出需经过的边数为2*(cnt-1)...原创 2022-05-09 21:17:16 · 426 阅读 · 0 评论 -
CF1674 F. Desktop Rearrangement(二维转一维, 模拟)
大致题意 : 给定二维字符数组, '*'代表图标, '.'代表空白, 按照电脑桌面默认的图标排序方式进行排序(即先排第一列, 再排第二列, 以此类推), 每次操作可以任意互换两个数组元素位置, 给定q次查询, 每次查询为一个下标, 并会将该下标取反(图标变空白, 空白变图标), 问每次查询的最小操作次数思路 : 将二维数组以列为一维进行二维转一维, 对一维字符串进行模拟分类讨论即可代码及其注释 :#include <iostream>#include <cstring&g.原创 2022-05-09 12:36:42 · 280 阅读 · 0 评论 -
C. Strange Test(思维+位运算)
RT大致题意 : 给定两个数字a,b, 能对a,b进行三种操作: 1. a = a + 1; 2. b = b + 1; 3. a = a | b;问至少多少次操作, 使得两数相等;分析 : 这是一道位运算的题目, 操作1,2很好理解, 而对于操作3, 要知道按位或的性质, 是a | b = a >= max{a, b} , 所以进行操作3后会使 原本a<b 到 a>=b, 再用一次二者差异会更大, 所以操作三只会用一次, 对于用一次操作3的情况下, 枚举3种...原创 2022-02-20 18:33:43 · 876 阅读 · 0 评论 -
C. Differential Sorting(思维)
大致题意 : 一个长度为n的数组, 通过少于n次的操作, 使得数组非递减操作为: 选定下标x,y,z(x < y < z), a[x] = a[y] - a[z]分析 : 一开始看错题, 以为要用最少的操纵, 就想着贪心+区间维护, 结果wa, 看一眼题解, 测试样例, 再跑去看题才发现, 不必要用最少的操作(寄 !)若是不必要用最少的操作就很简单了, 分析一下可以得出以下结论:1. 若a[n] > a[n-1], 则操作一定失败, 毕竟操作数最少3个, 这种情况...原创 2022-02-21 21:57:42 · 389 阅读 · 0 评论 -
D. Salary Changing(二分答案+贪心)
RT大致题意 : 有n名员工, 以及总资金s, 每名员工有个薪资期望区间l,r, 对于每名需要选择发放薪资sali, 使得每名员工的薪资中位数最大, 求这个最大的中位数分析 : 很容易可以想到用二分来找这个答案, 关于找二分区间的单调性:对l排序, 就可以得到最小的中位数left, 对r排序可以得到最大的中位数righ, 而要找的答案mid就在left,right之间, 我们可以对这个区间进行二分....原创 2022-02-19 22:12:37 · 638 阅读 · 0 评论 -
B. Binary Palindromes(思维)
大致题意 : 给定n个01串, 串内串间可以随意互换, 求组成01回文串数量的最大值分析 : 能组成01回文串的几种情况为:偶数串 : 0偶1偶(0奇1奇则不能组成回文串)奇数串: 0奇1偶 或 0偶1奇因为可以随意互换, 对于总数为n的字符串, 可以计算01总数, 一个字符串一个字符串的去填01, 使得尽量满足回文串, 我们假设, 总数为这几种情况:总数0偶1偶 :1、若都是奇数串, 我们可以恰好拼出n个01回文(因为是偶数个奇数串才能使得总数0偶1偶, 此时可以组k个0...原创 2022-02-19 15:47:58 · 463 阅读 · 0 评论 -
CF771 C. Inversion Graph(并查集)
题意分析 : 对于每个数字, 若前面的数字大于后面的数字, 则在这两个数字之间连一条边, 要求没有边连着的数字集合个数思路 : 可以很容易的想到用并查集的思想, 用一个数组a[i]记录1到i的最大值, b[j]记录j到n的最小值, 当a[i]<b[j+1] 时(前面集合中的最大值, 小于后面集合的最小值), 可以将两个集合合并, 即并查集记录的是一个满足题意数字集合, 通过a[i]和b[j]来进行维护代码如下:#include <iostream>#incl...原创 2022-02-17 15:29:50 · 470 阅读 · 0 评论