![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Codeforces
文章平均质量分 59
Nicoleeeee
这个作者很懒,什么都没留下…
展开
-
Codeforces Round #706 (Div. 1) A-D
A发现只用看绝对值,而且是小的跟小的配,大的跟大的配,否则就会形成蝴蝶的形状,两边之和大于第三边,不划算(图画一画)#include <bits/stdc++.h>using namespace std;const int N = 2e5 + 10;const long double inf = 1e9;inline int rd() { int p = 0; int f = 1; char ch=getchar(); while(ch<'0' || ch>原创 2021-04-01 22:10:49 · 109 阅读 · 0 评论 -
Codeforces 1487G. String Counting 【dp+容斥】
题意你需要构造一个长度为NNN的字符串,每个字符串最多含某个字符cic_ici,问能构造多少个不含奇回文串的字符串。N≤400,N3<ci≤NN\leq 400,\frac{N}{3} < c_i \leq NN≤400,3N<ci≤N分析考虑cic_ici有下界,所以至多两个字符会超过上界。没有奇回文,就是说串中 sis_isi 和 si−2s_{i-2}si−2 不相同,考虑如果是所有字符都没有上限的话,就是前两个字符有26种填法,后面都是25种填法。根据性质,原创 2021-02-19 20:38:01 · 236 阅读 · 0 评论 -
Codeforces Round #668 (Div. 1)
A很容易可以想到s[i]==s[i+k]s[i] == s[i+k]s[i]==s[i+k]所以每个位置s[i]s[i]s[i]都应该等于s[i%k]s[i \% k]s[i%k],然后再判断前kkk个如果是确定的000或者111,有没有超过k/2k/2k/2就可以了#include <bits/stdc++.h>#define rep(i,a,b) for(int i=(a);i<=(b);++i)#define dep(i,a,b) for(int i=(a);i>=(b原创 2020-09-07 16:10:25 · 320 阅读 · 0 评论 -
Codeforces Round #620 (Div. 2)
E. 1-Trees and Queries题意:给你一棵树,然后m个询问,每次询问都加一条边x-y并问a-b的距离能不能为k(询问独立)题解:加一条边相当于多一个环,发现一条边可以走过去又可以走回来,所以只要找出所有可能之后看%2是不是等于0:a - ba - x + loop + x - ba - y + loop + y - ba - x + loop +y - ba - ...原创 2020-02-16 20:46:52 · 247 阅读 · 1 评论 -
Codeforces 1295F. Good Contest dp+组合数学+概率
题意给你n个区间,[li,ri][l_i,r_i][li,ri],在每个区间里面选整数然后要求选出的整数递减的概率分析很老的套路了,考虑分母就是Πi=1n(ri−li+1)\Pi_{i=1}^{n}{(r_i - l_i + 1)}Πi=1n(ri−li+1)分子的话就是单调递减的dp,右端点+1变成左闭右开离散化之后考虑两个相邻的区间我们怎么选数下一个区间选的数要在上一个的右...原创 2020-01-31 00:15:24 · 385 阅读 · 2 评论 -
Codeforces 1286F. Harry The Potter 子集枚举dp+数学+构造
题目描述给你n个数,你可以进行两种操作1.将一个数-x2.选两个数(不能是同一个),一个-x,一个-(x+1)当然x可能为负数问最少操作次数使得所有数都变为0题解我们考虑性质,如果将一个操作2想成一条无向边,每个数想成一个点的话。结论1:这个图只能有n-1条边,而且不成环如果超过n-1条边,自然用操作1会更好,如果成环,就把成环的全用操作1搞掉,然后剩下的肯定是一棵树,如果有单独...原创 2020-01-27 22:42:10 · 407 阅读 · 0 评论 -
Educational Codeforces Round 78 (Rated for Div. 2) F. Cards 第二类斯特林数
题意给你洗nnn次牌,这副牌有m张牌,其中有一个大王,你每次会抽出最顶的一张然后看完之后就放回去,假设你看过x次大王,你的贡献就是x^k,求期望贡献分析题目就是要求∑i=1n(ni)ik(m−1)n−imn\frac{\sum\limits_{i=1}^{n} \binom{n}{i} i^k(m-1)^{n-i}}{m^n}mni=1∑n(in)ik(m−1)n−i然后一看这种形...原创 2019-12-20 21:22:03 · 186 阅读 · 0 评论 -
Codeforces 1263F Economic Difficulties dp
题意给你两棵nnn个点的树,一个是从上到下的,一个是从下到上的,最后末尾都有n个叶子结点,分别连向机器,现在你要删除尽量多的边,使得每个机器都和至少一个树的树根相连。且保证树上的点连机器的边是不交叉的n≤1000n \leq 1000n≤1000分析树上的点连机器的边是不交叉的,肯定一个结点子树能够连到的机器是连续的一段区间保证了肯定有一个点使得这个区间覆盖的值最大,就把这些区间变成区间...原创 2019-12-02 19:53:05 · 211 阅读 · 0 评论 -
Codeforces 1243E: Sum Balance 状态压缩dp
分析假设一个子集的总和现在是sum[i]sum[i]sum[i] ,所有相同要求平均子集大小为sss,给出一个数a[i][j]a[i][j]a[i][j]必定要收回s+a[i][j]−sum[i]s+a[i][j] - sum[i]s+a[i][j]−sum[i]有每个a[i][j]a[i][j]a[i][j]都互不相同我们把每个子集里的数拆成一个点,把替换变成一条边,就是有若干个环,每一...原创 2019-11-10 16:44:56 · 289 阅读 · 0 评论 -
Codeforces 1225E: Rock Is Push dp+前缀和
题意给你一个地图,你可以推箱子,不能推出界外,问从(1,1)(1,1)(1,1)到(n,n)(n,n)(n,n)的方案数分析一开始看完题目推箱子发现没有什么思路我们抓住性质,如果一个格子,已经有一次从上面把箱子推下来了,就不可能从左边再推过去其实我们走的就是横竖横竖这样的路线再考虑一个问题,我们可以确定一个格子可以从左边过来,但是推了多少个箱子过来,我们是不是要记录一下是从哪个位置开始...原创 2019-10-29 15:37:01 · 305 阅读 · 0 评论 -
CF选做
题目难度在1900-2500题目CF1220D 1900:想法题,考虑两个是奇数的话肯定可以,一个奇数一个偶数肯定不可以,两个偶数同时除2就好统计一个long long的数后面0的个数,可以用__builtin_ctzll(x)...原创 2019-09-22 14:36:27 · 187 阅读 · 0 评论 -
Codeforces 903G. Yet Another Maxflow Problem 最小割+线段树
题意给定一个2n个节点的图,其中n个点在A集,n个点在B集。且称A集第i个点为ai(B集类似)。每个ai(i < n)向ai+1连一条给定容量的边(B也一样),还有m条边从ax连到by,容量给定。 有q次操作,每次修改一条ax连向ax+1的边的容量(x和容量给定)。你需要对每次操作以及操作前输出以a1为源点,bn为汇点的最大流。n,m,q≤200000分析首先第一个最大...原创 2018-04-04 12:09:19 · 188 阅读 · 0 评论 -
Codeforces 864F. Cities Excursions 倍增
题意题意: 给定一个有向图,询问由s到t的字典序最小的路径的第k个点 输入: 第一行三个整数n(2<=n<=3000),m(0<=m<=3000),q(1<=q<=400000) 接下来m行每行两个整数x,y(1<=x,y<=n且x≠y)表示由x到y有一条路(由城市x到y最多只有一条路) 接下来q行每行三个整数s,t(1<=s,t<=...原创 2018-04-04 15:37:37 · 151 阅读 · 0 评论 -
Codeforces Educational Codeforces Round 42 (Rated for Div. 2) D,E,F
D题意每次把最小的两个给合起来,然后把右边的一个变成这个数的两倍,问最后的序列分析我的做法有点蠢,直接暴力合并,开一个权值线段树,叶子结点开个set存位置,然后维护同种元素最多出现多少个,一边找一边并就好 最后把所有的叶子结点给扫一遍,map一下代码#include <bits/stdc++.h>#define ll long longusing name...原创 2018-04-11 21:08:27 · 127 阅读 · 2 评论 -
Codeforces 786E. ALT 最小割+倍增
题意有n个点的树,n-1条边,每条边可以选择放不放狗,还有q条路径 每条路径要满足:路径上的边全是狗,或者自己带一条狗,问至少要多少狗 n and m (2 ≤ n ≤ 2 × 104, 1 ≤ m ≤ 104)分析首先我们可以简单的最小割 起点连向一条路径 一条路径连向路径的所有边 边连到终点但是输出方案有点难输出 我们想,如果流完之后,起点连过去有一条还有流量的边,...原创 2018-04-05 15:16:56 · 373 阅读 · 0 评论 -
Codeforces 718E.Matvey's Birthday dp+状态压缩
题意给定一个长度为n的字符串,字符集大小为8。两个点i,j之间有权值为1的边需要满足以下条件至少一个 1. |i-j|=1 2. si=sj求图的直径和多少个有序点对之间的最短路长度等于直径 N≤100000分析首先想到对于每个小写字母建一个虚点,然后再跑 有一个显然的性质,直径不超过15 然后有一个,f[i][j]=min(|i−j|,dist[i][c]+dist[j...原创 2018-04-06 15:30:50 · 183 阅读 · 0 评论 -
Codeforces 818G. Four Melodies 最大费用最大流
题意给定一个长度为n的序列,你需要选出4个没有交集的子序列,使得它们都满足:相邻两项要么差的绝对值为1,要么模7余数相同 求最长的总长度 4≤n≤3000分析首先我们想想怎么建图,可以把四个子序列变为流量,一个点变成费用,就跑最大费用最大流,每个点只能流一次,我们想到拆两个点一个入一个出 入的连到出的流量为1,费用为1,代表用这个点, 出的连到所有到达入的点,流量为inf,费用...原创 2018-04-07 10:36:22 · 342 阅读 · 0 评论 -
Codeforces 739E. Gosha is hunting 费用流 期望
题意n个人,有a个p操作,b个q操作 每个操作可以使一个人以p[i]/q[i]概率激活 问激活期望分析首先考虑不会同时操作一个人的期望应该怎么算 拉两个点出来,表示p操作和q操作,连向人流量为1,费用为p[i]/q[i] 然后每个点表示一个人,向终点连一个流量为1,费用为0的边,然后跑一遍跑一遍费用流现在多了同时操作一个人,考虑要减掉的贡献 1−(1−p[i])(1−...原创 2018-04-26 16:34:43 · 229 阅读 · 0 评论 -
Codeforces 613D. Kingdom and its Cities 虚树+dp
题意给你很多个询问,每个询问给你很多个关键点,问至少删除多少个非关键点,可以使所有关键点两两不连通分析首先建出虚树,对于虚树treedp一下 f[i][0/1]f[i][0/1]f[i][0/1]表示i子树内,关键点跟不跟外界联通 然后分一下当前点是不是关键点来转移就好了代码#include <bits/stdc++.h>#define cl clea...原创 2018-04-27 11:13:55 · 186 阅读 · 0 评论 -
Codeforces 666E. Forensic Examination 广义后缀自动机+线段树合并+倍增
题意给你一个母串和很多询问串,问母串的一段区间在一段连续询问串中出现最多的次数和询问串的位置分析快退役选手些不动这种东西啊。。 就对所有串建广义后缀自动机,然后建一棵线段树,位置为下标,然后按照father树合并上去,倍增找到相应位置就行了代码#include <bits/stdc++.h>using namespace std;const int N = 1...原创 2018-04-28 09:33:36 · 375 阅读 · 0 评论 -
Codeforces Round #576 (Div. 2)
A扫一遍就好了n*14#include <bits/stdc++.h> using namespace std;typedef long long ll;const int N = 1000010;inline int read(){ int p=0,f=1; char ch=getchar(); while(ch<'0' || ch>'9'){if...原创 2019-07-31 20:00:21 · 108 阅读 · 0 评论 -
Codeforces Round #366 (Div. 1) D. Captain America 上下界网络流
题意给定一个坐标平面上的N个点,要为这些点染色,每种点可以染为两种颜色,红色花费为r,蓝色花费为b。 现在给出m个约束条件,每个条件形如:“ ti li di ”表示: 1.如果ti=1,那么要求x=li上所有点红蓝数量之差小于等于di 2.如果ti=2,那么要求y=li上所有点红蓝数量之差小于等于di 然后要你最小化花费分析这是一个平面图,我们想到x和y连, 于是对...原创 2018-04-04 10:39:43 · 158 阅读 · 0 评论