随笔分类 -  题库—Codeforces

摘要:题意 "题目链接" Sol 可以这样考虑,在原图中没有边相连的点的值肯定是a / c 那么直接二分图染色即可 cpp include define LL long long using namespace std; const int MAXN = 1001, INF = 1e9 + 10; inl 阅读全文
posted @ 2018-12-29 17:33 自为风月马前卒 阅读(357) 评论(0) 推荐(0)
摘要:题意 "题目链接" 有$n$张牌,每张牌有四个属性$(a, b, c, d)$,主人公有两个属性$(x, y)$(初始时为(0, 0)) 一张牌能够被使用当且仅当$a define Pair pair define MP(x, y) make_pair(x, y) define fi first d 阅读全文
posted @ 2018-12-29 17:04 自为风月马前卒 阅读(456) 评论(0) 推荐(1)
摘要:题意 "题目链接" 在$n \times m$有坏点的矩形中找出两条从起点到终点的不相交路径的方案数 Sol "Lindström–Gessel–Viennot lemma" 的裸题? 这个定理是说点集$A = \{a_1, a_2, \dots a_n \}$到$B = \{b_1, b_2, \ 阅读全文
posted @ 2018-12-29 14:27 自为风月马前卒 阅读(634) 评论(0) 推荐(0)
摘要:题意 "题目链接" 给出长度为$n$的序列$a$,序列中的元素取值为$[ 2e9, 2e9]$ 找到两个位置$(i, j) (i define LL long long // define int long long define uint unsigned int define chmax(a, 阅读全文
posted @ 2018-12-10 11:10 自为风月马前卒 阅读(429) 评论(0) 推荐(0)
摘要:题意 "题目链接" Sol 很套路的题 直接考虑每个边的贡献,最后再把奇数点的贡献算上 cpp include define Pair pair define MP(x, y) make_pair(x, y) define fi first define se second define int l 阅读全文
posted @ 2018-12-06 21:50 自为风月马前卒 阅读(244) 评论(0) 推荐(0)
摘要:题意 "题目链接" Sol 我是这样考虑的:从大到小考虑每个$l, r$,最大的$l$应该和最大的$r$匹配(不然就亏了),其次次大的$r$应该和次大的$l$匹配 然后就过了。。 cpp / / include define Pair pair define MP(x, y) make_pair(x 阅读全文
posted @ 2018-12-06 21:48 自为风月马前卒 阅读(274) 评论(0) 推荐(2)
摘要:题意 "题目链接" Sol 好好读题 = 送分题 不好好读题 = 送命题 开始想了$30$min数据结构发现根本不会做,重新读了一遍题发现是个傻逼题。。。 $C_{i, j} = a[i] b[j]$ 根据乘法分配律,题目就变成了在数组$a, b$中分别选一段连续的区间,要求权值和相乘$ defin 阅读全文
posted @ 2018-12-06 21:46 自为风月马前卒 阅读(365) 评论(2) 推荐(0)
摘要:题意 "题目链接" 给出一棵树,每个节点有权值,选出$k$个联通块,最大化 $$\frac{\sum_{i \in S} a_i}{k}$$ Sol 结论:选出的$k$个联通块的大小是一样的且都等于最大联通块的大小 证明:因为我们是在保证分数最大的情况下才去最大化$k$,一个很经典的结论是单独选择一 阅读全文
posted @ 2018-12-05 10:16 自为风月马前卒 阅读(351) 评论(1) 推荐(0)
摘要:题意 "题目链接" 系统中有两个数$(a, b)$,请使用$62$以内次询问来确定出$(a, b)$ 每次可以询问两个数$(c, d)$ 若$a \oplus c b \oplus d$返回$1$ 若$a \oplus c = b \oplus d$返回$0$ 若$a \oplus c define 阅读全文
posted @ 2018-12-05 09:14 自为风月马前卒 阅读(372) 评论(0) 推荐(0)
摘要:题意 "题目链接" 求满足$i^2 + j^2 \% M = 0$的数对$(i, j)$的个数,$1 \leqslant i, j \leqslant 10^9, M \leqslant 1000$ Sol 发这篇博客的目的就是为了证明一下我到底有多菜。 mdzz小学组水题我想了40min都没想出来 阅读全文
posted @ 2018-12-03 22:04 自为风月马前卒 阅读(405) 评论(0) 推荐(0)
摘要:题意 "题目链接" Sol 倒着考虑!倒着考虑!倒着考虑! 显然,一个能成为答案的子图一定满足,其中任意节点的度数$ = k$ 那么倒着维护就只用考虑删除操作,如果一个点不合法的话就把它删掉,然后考虑与他相邻的点 如果不合法就继续删 cpp include define Pair pair defi 阅读全文
posted @ 2018-11-04 14:56 自为风月马前卒 阅读(365) 评论(0) 推荐(0)
摘要:题意 "题目链接" 给出$n$个数,问最少选几个数,使他们的$gcd = 1$ Sol 好神仙啊qwq。 首先,如果答案存在,那么最多为$7$(因为前$7$个质数乘起来$ = 3e5$) 考虑dp,设$f[i][j]$表示选了$i$个数,他们$gcd = j$的方案数! 没错是方案数! 那么我们只要 阅读全文
posted @ 2018-10-30 07:54 自为风月马前卒 阅读(752) 评论(5) 推荐(1)
摘要:题意 "题目链接" Sol 考场上做完前四题的时候大概还剩半个小时吧,那时候已经困的不行了。 看了看E发现好像很可做?? 又仔细看了几眼发现这不是sb题么。。。 先考虑两个人,假设贡献分别为$(x, y) (a, b)$ 有两种组合方式,一种是$x + b$,另一种是$y + a$ 若$x + b 阅读全文
posted @ 2018-10-30 07:43 自为风月马前卒 阅读(473) 评论(0) 推荐(0)
摘要:题意 "题目链接" 给出$m$个长度为$n$的排列,问有多少连续公共子串 $m \leqslant 10, n \leqslant 10^5$ Sol 非常naive的一道题然而交了3遍才过(昨晚真的困得不行。。) 枚举第一个串的位置,直接维护10个指针,分别表示每个串与第一个串匹配到的位置,同时记 阅读全文
posted @ 2018-10-29 17:14 自为风月马前卒 阅读(451) 评论(0) 推荐(2)
摘要:题意 "题目链接" Sol 这题打cf的时候真的是脑残,自己造了个 的数据开心的玩了半天一脸懵逼。。。最后还好ycr大佬给了个思路不然就凉透了。。。 首先不难看出我们最后一定可以把字符串弄成$aaaabbb$的形式,若当前位和下一位不一样就直接转就行了 注意特判一下最后一个位置 cpp / / in 阅读全文
posted @ 2018-10-29 17:05 自为风月马前卒 阅读(417) 评论(0) 推荐(1)
摘要:题意 "题目链接" Sol 神仙题啊Orzzzzzz 考场上的时候直接把树扔了对着式子想,想1h都没得到啥有用的结论。 然后cf正解居然是网络流??出给NOIP模拟赛T1???¥%……&((……%&(( 说一下非网络流解法吧。 首先题目中给出的$g(i, p_i)$我们可以认为是对于每个节点$i$, 阅读全文
posted @ 2018-10-28 15:42 自为风月马前卒 阅读(640) 评论(0) 推荐(0)
摘要:题意 "题目链接" Sol 说实话这题我到现在都不知道咋A的。 考试的时候是对任意相邻点之间连边,然后一分没有 然后改成每两个之间连一条边就A了。。 按说是可以过掉任意坐标上的点都是偶数的数据啊。。 cpp include include include include include includ 阅读全文
posted @ 2018-10-23 21:20 自为风月马前卒 阅读(522) 评论(0) 推荐(1)
摘要:题意 "题目链接" 给出一个$n \times n$的矩阵,允许修改$k$次,求一条从$(1, 1)$到$(n, n)$的路径。要求字典序最小 Sol 很显然的一个思路是对于每个点,预处理出从$(1, 1)$到该点最多能经过多少个$1$ 然后到这里我就不会做了。。 接下来应该还是比较套路的吧,就是类 阅读全文
posted @ 2018-10-21 21:08 自为风月马前卒 阅读(673) 评论(0) 推荐(3)
摘要:题意 "题目链接" 给出两个序列$a, b$,求出一个序列$t$,满足 $$a_i = t_i | t_{i + 1}$$ $$b_i = t_i \& t_{i + 1}$$ 同时,$0 \leqslant a_i, b_i, t_i \leqslant 3$ Sol 打比赛的时候想到了拆位,从此 阅读全文
posted @ 2018-10-21 20:34 自为风月马前卒 阅读(318) 评论(0) 推荐(3)
摘要:题意 "题目链接" 给出一张有向图,以及起点终点,判断每条边的状态: 1. 是否一定在最短路上,是的话输出'YES' 2. 如果不在最短路上,最少减去多少权值会使其在最短路上,如果减去后的权值$ define Pair pair define MP make_pair define fi first 阅读全文
posted @ 2018-10-20 09:26 自为风月马前卒 阅读(493) 评论(0) 推荐(0)

Contact with me