随笔分类 - CF题解
摘要:题面很短,别的博客也讲了就不说题意了。 做法: 异或是没有进位的加法,所以ai + 1的二进制最高位要大于ai的二进制最高位,才能满足ai递增,bi也递增的条件。呐这样的话,选了4,(5,6,7)就都不能选了,只能选比7大的数。 这样分析下来a数组最长也只有30,(2^30>1e9) 直接按照数字大
阅读全文
摘要:题意其他博客大概都描述了 说做法: 三种做法都是在一个把这题转换的前提下。 一、分析题 1. 数据范围 n * m 1e18,所以直观的对矩阵去跑大概率不行的。 2. 关注两个操作,一个操作是取两块+1, 另一种是一块+2。 因为可以进行无数次操作,我们发现只要所有数都是奇数或者都是偶数,即奇偶性相
阅读全文
摘要:这里找到相应的分类的博客(DIY完了博客,但设置分类不会啊。逃~)
阅读全文
摘要:A题 : 没什么总结的,就是根据题意去做。 代码: #include <bits/stdc++.h> using namespace std; #define ll long long #define forn(i, n) for(int i = 0; i < n; ++i) #define for
阅读全文
摘要:题意:n(5000)个学生,m个社团(5000),每个学生有一个值ai和归属的社团bi,现在领导想让不同社团出一个人,使得出来的人的值可以从0连续排到ans。每天有一个学生会退出自己的社团,问当天的最大ans是多少。 思路: 如果倒着来的话,那么就成别人进社团了,这样想好像问题简单一些。 我们把学生
阅读全文
摘要:题意:有向图500个点,1000条边,删除和添加一些边使得除了一个点以外每个点的入度和出度为2,剩下那一个点跟所有点都有连边,问最小操作数。 思路:枚举中心点,然后将剩下的点拆成2个点,入度和出度(精神分裂)。然后二分图跑最大匹配,这样就好搞了。 代码: #include <bits/stdc++.
阅读全文
摘要:题意:一个二分图,两边各1e3个点,1e5条边。求最小染色种类(染色边)方案使得同一个点相连的边没有相同染色。 思路: 二分图没有奇环 1000个点n*m的时间刚好够 考虑匈牙利算法,我们每次更新一条边,然后强行配偶,被绿的那个点再去找新欢。那我们染边也一样,因为没有奇环。我们每次找两个点所能连出的
阅读全文
摘要:题意:给1e5个区间(区间大小1e9,构造区间01染色,可否构造出每个点被染成0和被染成1的次数一样。 思路: 想通一点,不可能输出-1 差分,染色相当于a[l]++,a[r+1]– 设蓝+1,红-1,那么染蓝a[l]++,a[r+1]–;染红a[l]–,a[r+1]++ 把差分问题转为建图,a[l
阅读全文
摘要:题意:无向图,让你定向每条边,有必要可以加一些边,使得图中每个点的入度和出度%2==0,输出最小加边的构造方式。 思路:奇度相连。a-b-c-d-e改为a->b<-c->d<-e,边为奇数任意一个点连一个自环,之后跑欧拉回路。 代码: #include <bits/stdc++.h> using n
阅读全文
摘要:题意:给你一个无向图,使其变为有向,让入度==出度的点最多。 思路: 想通一个点:只有度数为偶数的点可以满足条件。想通这一点之后可以跟奇点建立一些虚边,跑欧拉回路。 代码: #include <bits/stdc++.h> using namespace std; #define ll long l
阅读全文
摘要:此题标难度2500,场内ac4人,因为是一开始的cf,段位都不高就给的分低了。可能有2700分。 欧拉路径好题 题意:给你一个无向图,问能否输出两条路径,使得遍历所有边。 思路:很显然,一眼能想到欧拉路径,但是两条看似简单,其实要想很多。 m==1 此时输出-1 只有一个联通块,那么我们仔细想一下,
阅读全文
摘要:总结:A5mins ac,B过的慢22mins ac,接着就被c卡了一小时1小时ac,写到了d题,因为打星练了下手速,无板子17mins ac还算不错,e是个差分,f思维题。 总结: C题想多一点,就节省了很多代码量。 E题要静下心写。 题解: A. 题意:00个货物,价格不一。使所有货物价格变为一
阅读全文
摘要:题意: n(100)个字符串长度不超过100,按照题目给出的顺序能否重新定义一下字典序。如果可以输出这26个字母 思路:拓扑排序 代码: #include <bits/stdc++.h> using namespace std; #define ll long long #define forn(i
阅读全文
摘要:A.题意:100个数字,大小100,问可否从中选出k个不同数字,输出位置 思路:map.count 代码: #include <bits/stdc++.h> using namespace std; #define ll long long #define forn(i,n) for(int i=0
阅读全文
摘要:这场心态和状态不是特别好,Awa了一发,B读题慢,C读错wa了2发,Ewa了7发,D没耐心写下去,F场后学的。 总结: 要调整wa题的心态。 A题写慌了在判断条件加了个东西 C题the num of需要敏感,wa的另一发是if判断条件。 D题缓下来推一推就出来了,总是没想好子序列。 E题map 题解
阅读全文
摘要:这场A读错了题12mins1A,B题卡读题18mins1A,C题还行13mins1A,D想了想觉得写起来有点慢,转头看E,发现比较简单,wa了2发,T了2发之后才A用了50mins+。F场后看的不太会,D题学了个二维预处理的方法。 总结: 打现场赛的时候不能题不读完就开始做题,尤其签到要细想。 E题
阅读全文
摘要:这场AB很快就秒了,C没读懂题,D也没读懂,开了E题,wa了2发之后休息了一会开始做CD,C很简单过了,然后继续怼E,wa了1发,开始看F然后开D,最后DE切换,后来发现Dwa3发是爆了int。E一直想拿并查集做懒得写tarjan,补题的时候发现了并查集的bug,最后还是拿了tarjan写。F题场后
阅读全文
摘要:这场A一发7mins,Bwa2发20mins,C卡题了一会换题,D题5-7mins,E题40mins,F题假算法。 一开始A题5mins写完交的时候输出格式错了再读题耽误了2mins,B题写完13mins之后少考虑了两种情况,各RE了两发,20minsac,送了20+7分钟的罚时,C题没有细想跳开了
阅读全文
摘要:本场a,b,c秒的较快,a2mins,b11mins,c8mins。b题在实现过程中有些偏慢,c题wa了一发,差点写出了一个hack点,如果是现场打可能会被fst。d题想错了一个地方,认为题读错了卡了40mins,e题20mins写完,f题场后看题解会,最后10mins理解了d题,写出了一个bug场
阅读全文
摘要:A题因为交了错了文件和试样例慢了2mins用了5mins,B题读题较慢用了13mins,C题读题也偏慢用了7mins,D题少考虑一种情况wa了3发用时22mins,E题读错了判断条件,写完用了40mins。F题场后看题解学会。 总结: 每次文件要在场前调整好。 过了A题仍要快速读题。 D题的多种情况
阅读全文

浙公网安备 33010602011771号