摘要: "传送门" $MSV$ 设个阈值搞一搞就行了 $EVEDG$ 如果$m$是偶数全都扔一个集合里 否则如果有一个点的度数是奇数,那么把这个点单独一个集合,其它的放一起 如果没有点的度数是奇数,那么随便找一条边,把这条边连的两个点设成不同的颜色,其他所有点为第三个颜色 $BACREP$ 不考虑子树问题的 阅读全文
posted @ 2019-10-14 17:33 源曲明 阅读(226) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2019-10-13 19:39 源曲明 阅读(822) 评论(5) 推荐(2) 编辑
摘要: "传送门" $A$ 咕咕咕 $B$ 咕咕咕 $D$ 考虑最终的序列,一个$1$一定是由一开始的$11111...101$或者$101...111$转移而来的,且假设有$k$个$1$,那么贡献就是$k 1$,我们记形如这样的串为好的,那么所有好的串的串长总和是$O(n)$的,那么预处理一下直接$dp$ 阅读全文
posted @ 2019-10-13 15:10 源曲明 阅读(134) 评论(0) 推荐(0) 编辑
摘要: "传送门" $A$ 咕咕 $B$ 咕咕 $C$ 首先去掉所有$x$之后得是一个回文,然后把不是$x$字母之间的$x$填到对称就是了 cpp //quming include define R register define fp(i,a,b) for(R int i=(a),I=(b)+1;iI; 阅读全文
posted @ 2019-10-09 19:15 源曲明 阅读(236) 评论(0) 推荐(0) 编辑
摘要: "传送门" $A$ 首先只有一串的情况下,遇到相同的肯定是改后面那一个最优,然后两串的话可能要分奇偶讨论一下 $B$ 首先有奇环肯定无解,否则我们枚举哪个点是$1$号点,用$bfs$依次确定剩下的每个点的编号,因为图中不存在奇环所以这样跑出来的肯定合法 $E$ 好迷的题目啊…… 首先把环从$2n$到 阅读全文
posted @ 2019-10-09 09:01 源曲明 阅读(554) 评论(0) 推荐(2) 编辑
摘要: "传送门" $A$ 咕咕 $E$ 首先第一次肯定是整行或整列的,那么我们假设第一次是整列,并假设整列涂色的区间为$[l,r]$(其中$l,r$两列必须可以涂色),设这个区间中上下都可以涂色的列的个数为$k$,那么这一部分的贡献就是$2^k$ 然后考虑两边,我们强制两边都得先横着涂一次,之后随意。以左 阅读全文
posted @ 2019-10-03 16:27 源曲明 阅读(261) 评论(0) 推荐(0) 编辑
摘要: "传送门" $A$ 咕咕 $B$ 先不考虑结果不变的操作,发现如果一个翻转的区间$[l,r]$满足$s[l]=s[r]$那么我们现在可以选择操作$[l+1,r 1]$而使得最终的序列和翻转$[l,r]$之后的序列相等,那么我们就不计数$[l,r]$,这样我们只要数出有多少对$[l,r]$满足$s[l 阅读全文
posted @ 2019-10-03 08:21 源曲明 阅读(178) 评论(0) 推荐(0) 编辑
摘要: "传送门" $A$ 根据裴蜀定理显然要$k|\gcd(a_1,...,a_n)$,顺便注意不能造出大于$\max(a_1,...,a_n)$的数 $C$ 先考虑二维的情况,即总共有$n=x+y$个人,每个人有金币$a_i$或银币$b_i$,那么先假设所有人都取银币,加上前$x$大的$a_i b_i$ 阅读全文
posted @ 2019-09-27 20:29 源曲明 阅读(197) 评论(0) 推荐(0) 编辑
摘要: "传送门" $A$ 直接转移就是了 $B$ 我是个$zz$…… 每个数的贡献要么为正要么为负,那么我们枚举有几个贡献为正的,然后算一下贡献总和的上下界就行了 cpp typedef long long ll; int n,a,b,c,d;ll l,r; int main(){ scanf("%d%d 阅读全文
posted @ 2019-09-26 18:47 源曲明 阅读(161) 评论(0) 推荐(0) 编辑
摘要: "传送门" $A$ 直接枚举最终的字母然后模拟就行了…… 就这数据范围还是别学我写的这种做法了…… $B$ 所有颜色可以被分成只出现$1$次的和出现多次的,而前者的$a_i$必定比后者小$1$ 如果所有的$a_i$都相等,考虑到底是全出现$1$次还是全出现多次,否则必定是形如若干个$k 1$和$k$ 阅读全文
posted @ 2019-09-25 18:32 源曲明 阅读(238) 评论(0) 推荐(0) 编辑