Codeforces
文章平均质量分 57
Rose_max
这个作者很懒,什么都没留下…
展开
-
Codeforces 水题选刷
翻译会给出在代码中Ctrl+F点开网页搜索,直接查题号即可有一些很棒的题我会单独拿出来写题解的,特别水的题就不做了嘻嘻嘻Codeforces 938C/*题解:给定两个正整数n,m(m≤n),对于一个n阶0-1方阵,其任意m阶子方阵中至少有一个元素“0”,则可以求解这个方阵中的“1”的最大数目。现求解这个问题的逆向问题:已知这个最大数目为X,求相应的n和m。 */...原创 2018-03-26 09:14:24 · 1057 阅读 · 2 评论 -
[Codeforces1046D][BFS序][树状数组]Interstellar battle
翻译给出一棵树以及树上的点消失的概率Q次修改每次修改一个点消失的概率问每次修改之后当前树剩下的连通块个数的期望Q<=200000 N<=100000题解通过这题gay到了一个新姿势:树上连通块个数=点数-边数相当于动态维护一个E(V−E)E(V-E)E(V−E)根据期望的线性性,上式可以写为E(V)−E(E)E(V)-E(E)E(V)−E(E)可以先将消失...原创 2018-09-23 09:03:43 · 216 阅读 · 0 评论 -
[Codeforces1046B][圆方树]Hyperspace Highways
翻译给你一张N个点M条边且边权均为1的图Q次询问两点之间的最短路性质:如果图中有环 这个环上的点构成的子图一定是一个完全子图题解如果有环那么显然环上任意两点的距离都是1建出圆方树数一下两点路径上圆点个数+方点个数乱撸一下…其实只是来扔板子的#include<cstdio>#include<cstring>#include<cstdli...原创 2018-09-23 09:19:13 · 345 阅读 · 0 评论 -
[Codeforces348E][bzoj4342][DP]Pilgrims
Description在很久以前有一片土地被称为 Dudeland。Dudeland 包含 n 个城镇, 它们用 n − 1条双向道路连接起来。这些城镇通过道路可以两两互达。这 里有 m 个修道院坐落在 m 个不同的城镇。每个修道院有一个教徒。在一年之始,每个教徒会选择离他最远的一个修道院。如果有多个, 他会把所有的都列入清单。在 “BigLebowskiday”里,每个教徒会随机选 择...原创 2018-10-07 21:51:08 · 382 阅读 · 2 评论 -
[Codeforces908G][DP]New Year and Original Order
翻译定义S(x)表示x的数位从小到大排序后得到的值如S(505)=55,S(43231)=12334求∑S(i)\sum S(i)∑S(i),i&lt;=n,n&lt;=10700i&lt;=n,n&lt;=10^{700}i<=n,n<=10700题解很套路的东西考虑把贡献拆开比如1112223334411111111111—...原创 2018-10-08 19:35:47 · 335 阅读 · 0 评论 -
[Codeforces436D][DP]Pudding Monsters
翻译有一条无限长的数轴上面放着n个布丁相邻两个布丁会黏在一起,移动任意一块另外一块也会移动每次你可以向左或者向右移动一块布丁,这块布丁会一直运动到撞到一块布丁为止然后他们就黏在一起了数轴上有m个特殊点你可以做无数次操作,求最多能覆盖多少个特殊点n<=100000,m<=2000题解容易发现,最后布丁一定会分成一段一段的其中每一段的左边或者右边一定有一个没有动...原创 2018-10-09 14:28:30 · 295 阅读 · 2 评论 -
[Codeforces314E][DP]Sereja and Squares
翻译Sereja在平面上画了n个点,第i点(1<=i<=n)坐标为(i,0)。然后Seraja在每个点上标记了一个大写或小写的英文字母。Seraja不喜欢字母’x’,所以她没有用’x’标记任何点。Seraja认为,当标记方式满足以下条件时,这些点就被“美丽地”标记了:1.所有点能够被分成若干点对,每个点在且仅在一个点对中; 2.在每个点对中,横坐标较小的点被小写字母标记,横坐标较...原创 2018-10-09 17:09:28 · 928 阅读 · 1 评论 -
[Codeforces1097F][莫比乌斯反演]Alex and a TV Show
翻译n个可重集,有Q次操作1 u v 表示将第u个可重集的元素置为1个v2 u a b 表示将第u个可重集置为第a个可重集和第b个可重集的并集3 u a b 表示将第u个可重集置为第a个可重集的每个元素和第b个可重集的每个元素的gcd的并集4 u v 表示求在第u个可重集中元素v的出现次数是奇数还是偶数n<=1e5 Q<=1e6 1<=v<=7000题解...原创 2019-01-05 09:11:03 · 529 阅读 · 0 评论 -
[bzoj5052][Codeforces765F][主席树]繁忙的财政官/Souvenirs
Description伟大的王朝即将在下个月迎来奥西利斯节,这是整个埃及最盛大的节日。胡夫非常重视这次盛会,所以他经常向财政官询问国家的财政事项。但是同时,有成堆的文件等待着财政官检视,为此他忙得不可开交。现在他正处于崩溃的边缘(辞职申请都写好了)。他听说你这个异乡人拥有神奇的能力,于是带着丰厚的礼品来带了你的居所,看样子你是没法拒绝他了…….财政官的工作很简单,但是国王的视察很繁琐(官...原创 2019-03-26 19:22:22 · 354 阅读 · 0 评论 -
[codeforces1019B][二分法求函数零点]The hat
翻译有一个大小为nnn的圈,满足相邻的数绝对值差为111且nnn为偶数你每次可以询问一个位置上的数的数值现在问是否存在一个位置xxx满足xxx与x+n2x+\frac{n}{2}x+2n上的数是相等的询问次数不超过60次题解第一场vp直接给我掉飞分了肯定没有课内玩家日常gg首先可以知道n%4n\%4n%4不为000时是一定无解的我们先定义d[i]d[i]d[i]为iii位...原创 2019-04-02 16:36:44 · 248 阅读 · 0 评论 -
[codeforces1060F][DP]Shrinking Tree
翻译你有一棵nnn个点的树,做n−1n-1n−1次如下操作随机选择一条当前存在的边并把他的两个端点缩起来,新端点的编号在两个端点间等概率随机问最后每个点成为最后一个点的概率n≤50n\leq 50n≤50题解吼啊先放一下参考了这位爷爷的自己很辣鸡的一点就是遇见这种nnn不小不大的就不会玩了…首先当然可以想到,枚举需要计算的顶点然后把他拉到根节点,开始考虑怎么计算然后就被...原创 2019-04-03 19:40:18 · 340 阅读 · 0 评论 -
[Codeforces713E][DP]Sonya Partymaker
翻译题解注意一个人确定了一个方向就不会改变…容易想到二分+dpdpdp判断然后考场上就想了个假飞的做法23333333我们考虑怎么check首先能够发现是答案的上界是最长的一段,不妨把这一段转到111和nnn之间,为什么稍后会介绍把这个问题扔到序列上做的话,我们可以这样dpdpdp设f[i]f[i]f[i]表示覆盖完了[1,i][1,i][1,i],往后最远还能覆盖到多少...原创 2019-04-13 10:49:04 · 414 阅读 · 0 评论 -
[Codeforces1139D][DP][莫比乌斯反演]Steps to One
翻译给你一个数nnn每次随机在[1,n][1,n][1,n]中选一个数加入aaa数组如果aaa数组中gcd=1gcd=1gcd=1时就结束问aaa数组的期望长度题解把图建出来,发现如果去掉自环就是一个DAG发现自己居然不会求这个期望…先记住一点东西f[x]=∑(f[y]+1)∗tf[x]=\sum (f[y]+1)*tf[x]=∑(f[y]+1)∗t然后如果已经求出了除了...原创 2019-04-21 16:35:07 · 548 阅读 · 0 评论 -
[Codeforces1153F][数论]Serval and Bonus Problem
翻译你有一个长度为LLL的数列,在上面随机选择2∗n2*n2∗n条线段求至少被覆盖了KKK次的区间的长度和的期望题解数学菜逼来啦先考虑一个子问题,在一个[0,1][0,1][0,1]的数轴上随机撒iii个点,求某个间隔长度的期望抛出结论的话就是期望是1i+1\frac{1}{i+1}i+11感性认知的话我们可以想象一下每个区间的期望其实是相同的…理性认知的话我们考虑这iii...原创 2019-04-14 16:52:13 · 693 阅读 · 0 评论 -
[Codeforces938F][DP]Erasing Substrings
翻译给你一个长度为n的串K次操作(K==⌊log2n⌋\lfloor \log_2n\rfloor⌊log2n⌋)第i次操作去掉长度为2i−12^{i-1}2i−1的串求最后剩下的字典序最小的串n<=5000题解显然我们可以找到一种方案使得删去的串在原串中没有相交的情况设f[i][j]f[i][j]f[i][j]表示删去后剩下的串长度为i,删除掉的长度状态为j第...原创 2018-10-05 21:06:03 · 296 阅读 · 0 评论 -
[Codeforces755G][DP][NTT]PolandBall and Many Other Balls
翻译给你n个球,把他们分成K组,允许有的球没有组每组不能为空也不能超过两个球求方案数n<=1e9 K<=2^15题解设f[i][j]f[i][j]f[i][j]表示前iii个球分成jjj组的方案数朴素DP容易想到f[i][j]=f[i−1][j]+f[i−1][j−1]+f[i−2][j−1]f[i][j]=f[i-1][j]+f[i-1][j-1]+f[i-2]...原创 2018-10-05 19:33:55 · 459 阅读 · 0 评论 -
[Codeforces938D][Dijkstra]Buy a Ticket
翻译: 给定一张包含n(n<=2*10^5)个节点的图,给出m(m<=2*10^5)条双向边,边有权,每个点也有权 对于每个点i,你要输出i到任意一个点再回来的最小代价,到达那个点时要加入那个点的点权,经过则不用题解 可以发现,假如不计边权的情况下,一个点到另一个点的来回路径是固定的。即为这个点到那个点的最短路。在这个条件下,我们直接把边权全部*2,一个点到...原创 2018-04-02 11:30:26 · 204 阅读 · 0 评论 -
[Codeforces946F][DP]Fibonacci String Subsequences
翻译: 定义f[i]=f[i-1]+f[i-2],+表示拼接的意思,即为f[i-1]与f[i-2]拼接起来组成f[i] 给出一个子串(长度<=100),求这个子串在fn(n<=100)的子序列中出现了多少次 答案对1e9+7取模题解 由于英文不好我理解成了子串与后缀 然后发现就不会做了2333 上网%了一发题解发现原来我我我我看错题了 ...原创 2018-03-27 20:36:04 · 380 阅读 · 0 评论 -
[Codeforces946E][贪心]Largest Beautiful Number
翻译 定义一个数为美丽数,当且仅当这个数长度为偶数,且他的某一个排列可以组成一个回文数 给出n(n<=2*10^100000),求小于n的最大美丽数 题解 从定义中可以发现,一个数为美丽数的情况,当且仅当他出现过的所有数字出现的次数均为偶数次 贪心地想,如果这个数较高的位能取大,那么一定取大 预处理在当前位置i,每个数字出现的次数是偶数次还是奇数次 ...原创 2018-03-28 08:18:08 · 323 阅读 · 0 评论 -
[Codeforces940F][莫队算法]Machine Learning
翻译: 给出一个长度为n(n<=100000)的序列,序列中每个数a[i]<=10^9 设c[i]表示第i种数出现的次数 q(q<=100000)次询问,询问共有两种 第一种 1 x y 表示求序列中x~y c[i]的mex。mex表示最小的没有出现过的值(不包括0) 第二种 2 x y 表示把序列中第x位的数替换为y题解 治数据结构学傻系...原创 2018-03-28 16:01:53 · 311 阅读 · 0 评论 -
[Codeforces451E][数论][容斥原理]Devu and Flowers
翻译 给定n个盒子,每个盒子里有a[i](1< =a[i]<=10^12)朵花,现在要求从盒子中取出共m(1<=m<=10^14)朵花,求不同的方案数有多少种题解 容斥原理+多重集组合数 首先很明显能看出这是个多重集组合数,且是m更为一般的情况 根据容斥原理有公式 ans=Cn−1n+m−1−∑i=1nCn−1n+m−1−(a[i]+...原创 2018-07-17 10:39:47 · 260 阅读 · 0 评论 -
[Codeforces1045B][乱搞] Space Isaac
翻译有0~m-1的数被分成了两个集合每次你可以从两个集合中任取一个数做加法并对m取模问最后0~m-1中不能被组合出来的数有多少个会给出你A集合 大小不超过200000m&lt;=1e9题解比赛的时候想不到…不妨先看一个数在什么情况下不能被表示出来设这个数为P如果有一个数x在A集合 显然(P-x)mod m也要在A集合否则显然可以表示出这个数x可以分为两段 小于P和大于...原创 2018-09-23 20:23:04 · 479 阅读 · 0 评论 -
[Codeforces1058E][分治]Vasya and Good Sequences
翻译给你一些数 你可以把这些数二进制表示中的1任意移动问有多少个区间满足 你做完上面的操作后他们的异或和为0题解显然是给你一些数你要把每个数分成两半 加入两个集合要求这两个集合的数值相同大概就是结论吧…你会发现这一段区间满足条件的话当且仅当区间权值和&gt;=区间MAX*2然后分治就好了…#include&lt;cstdio&gt;#include&lt;cstr...原创 2018-09-25 08:24:57 · 258 阅读 · 0 评论 -
[Codeforces960G][NTT][DP]Bandit Blues
翻译给你三个正整数 n,a,b,定义 A 为一个排列中是前缀最大值的数的个数,定义 B 为一个排列中是后缀最大值的数的个数,求长度为 nn 的排列中满足 A = a且 B = b 的排列个数。n≤10^5,答案对 998244353取模。题解很妙我是膜beginend的!开始想的是每次加入n+1然后就凉了啊…转换一下思路每次加入最小的一个数显然只有在加入到最前方的时候才会对...原创 2018-10-01 16:13:58 · 280 阅读 · 0 评论 -
[Codeforces301E][DP]Yaroslav and Arrangements
翻译如果一个数列相邻两项之差的绝对值均为 1(我们认为首项和末项也相 邻),并且首项是数列中最小的元素之一,那么我们称之为良好数列。 如果一个数列单调不降且长度在 1 到 n 之间,数列中每个数的值在 1 到 m 之间,且重排后能得到至少 1 个至多 k 个良好数列,那么我们称之为优秀数列。 给出 n、m、k,求优秀数列的个数。 答案对 1000000007 取模题解这题有点东西…把...原创 2018-10-11 09:47:37 · 434 阅读 · 0 评论 -
[Codeforces856C][DP]Eleventh Birthday
翻译对于每组数据,给出n个数字,求有多少种排列方式,使得排列后的n个数字首尾相接形成的数字能被11整除。答案对998244353取模题解把位数是奇数和是偶数的数分开考虑如果有i个奇数的数显然有floor(i2)floor(\frac{i}{2})floor(2i)个数的贡献必须取负偶数的数不管怎么插入奇数的数里面 奇数的数的贡献都不会改变可以直接dpf[i][j][k]f[...原创 2018-10-03 11:31:26 · 222 阅读 · 0 评论 -
[Codeforces958C3][DP][树状数组]Encryption (hard)
翻译给你一个长度为n的序列,要求你把它分成K段每段的价值为这段的总权值%P要求总价值最小n<=500000 K<=100 P<=100题解方程f[i][j]=min(f[k][j−1]+(sum[i]−sum[k])mod&ThinSpace;&ThinSpace;P)f[i][j]=min(f[k][j-1]+(sum[i]-sum[k])\...原创 2018-10-03 16:09:18 · 270 阅读 · 0 评论 -
[Codeforces954H][DP]Path Counting
翻译给你一棵树其中深度为i的点有a[i]个儿子求树上路径长度为K(1<=K<=2*n-2)的两个点集合有多少个n<=5000,a[i]<=1e9题解设f[i][j]表示在深度为i的节点,只在他两棵子树内与他距离相距为j的点对数量对于一个序列ia[i] a[i+1] a[i+2] a[i+3]在dp到i的时候,长度为j的数量其实就是j分成两个...原创 2018-10-04 09:35:05 · 224 阅读 · 0 评论 -
[Codeforces643E][DP]Bear and Destroying Subtrees
翻译给你一棵初始只有根为1的树两种操作1 x表示加入一个新点以x为父亲2 x表示以x为根的子树期望最深深度每条边都有12\frac{1}{2}21的概率断裂题解性质:我们只用考虑40层以内的节点 因为深度过大的的概率太小不予考虑设f[i][j]f[i][j]f[i][j]表示以i为根的子树 最深深度不大于j的概率计算答案可以直接∑(f[x][i]−f[x][i−1])∗...原创 2018-10-04 10:47:47 · 212 阅读 · 0 评论 -
[Codeforces264E][线段树][DP]Roadside Trees
翻译在 1∼n1∼n1∼n 的位置能种树,刚开始能种树。第 iii 个时刻会有操作:1.在一个没种过树的位置 pip_ipi种一颗高度为hih_ihi的树。2.砍掉第 xix_ixi棵树,保证这个位置以后不会种树。每天树会长高111每执行一次操作,输出最长上升子序列长度任意时刻树的高度不同题解看完题…不会做看完数据范围…有点想法每次加入的高度不会超过10每次删除...原创 2018-10-12 10:32:25 · 297 阅读 · 1 评论 -
[Codeforces888F][DP]Connecting Vertices
翻译给你一个邻接矩阵为1代表可以连边要求你把N个点连成一棵树其中没有任意两条边满足(i<x<j<y)求方案数题解显然是一个只满足包含的情况设f[i][j]表示在(i,j)区间内,i->j有一条边且区间联通的方案数设g[i][j]表示在(i,j)区间内,只要求区间联通的方案数如果g直接转移g的话显然会算重枚举左端点与谁连边,用f转移到g,这样不会有...原创 2018-10-05 10:24:41 · 333 阅读 · 0 评论 -
[Codeforces1155F][DP]Delivery Oligopoly
翻译给你一张双联通图,问你最少留下多少条边使得他还是双联通这里的双联通指两点能够通过至少两条边不相交路径互达题解貌似是一个经典问题fuck考场掉分一点都不想写这场题解来着…我们考虑成为答案的双联通图是可以怎么构造的我们可以每次拿出一条链,然后使得答案的双连通图变成一个更小的双联通图然后一个思路就出来了预处理一个g[S][x][y]g[S][x][y]g[S][x][y]表示...原创 2019-04-24 19:14:10 · 705 阅读 · 0 评论