摘要:
网络流两题。 圆方树 落谷任务计划下方 阅读全文
摘要:
1.27 ybt1786 sum数组没有将n以后的值补全为sum[n]。 1.28 ybt1787 sum数组没有给左边留,并且右边补全时sum[i]=sum[n+w]写成了sum[i]=sum[n]。 1.31 ybt1720 01分数规划类二分的时候,注意输出的是l还是r。 2.23 P2801 阅读全文
摘要:
1.作用 可以用来搞一些离线的题目,用于代替复杂的数据结构入树套树。 2.做法 1.分治左边区间。 2.计算左边区间对右边区间答案的贡献。 3.分治右边区间。 4.将当前区间排序。 5.return。 3.例题 1.树状数组 单点修改区间查询。 将所有操作记录cdq分治。 每次分治时递归完了如果在左 阅读全文
摘要:
1.一种数据结构,一般用于有撤销操作,并且不好处理撤销的题目中。这个时候对时间建立线段树,将每个修改和询问插入对应时间内,对每个线段树节点进行处理就可以保证时间复杂度为 \( \O (nlogn) \) 。 2.例题 (1) P5787 二分图 /【模板】线段树分治 题意:给出n个点,m条边,每条边 阅读全文
摘要:
求两个直线交点 inline point jiaodian(line x,line y) { point hu=x.x-y.x; double gu=(y.y*hu)/(x.y*y.y); return x.x+(x.y*gu); } View Code 阅读全文
摘要:
1.可以用于处理与异或有关的问题(异或最大值,一堆数中有无子集异或等于0,某数在一堆数异或中的排名) 2.插入操作 x=read(); for(int j=60;j>=0;j--) { //cout<<(int)((int)1<<j)<<"\n"; if((int)((int)1<<j)&x) { 阅读全文
摘要:
题意: 一次操作选择1<i<n,使 \( c_{i'} = c_{i-1} +c_{i+1}-c_{i} \) 是否能做若干次操作,使每个 \( c_{i}=t_{i} \) n<=1e5 题解 化简原式, \(c_{i'}-c_{i-1}=c_{i+1}-c_{i} \) \(c_{i+1}-c_ 阅读全文
摘要:
https://www.luogu.com.cn/problem/P2150 题解 前n个数(除去1)分到两组头,两组都要互质。 考虑30% 质数只有10个就可以状压f[i][j]表示第一组有状态为i的质数,第二组j有好多种方法。 显然f[i][j&s]+=f[i][j](!(i&s)) f[i&s 阅读全文
摘要:
https://www.luogu.com.cn/problem/P2048 题解 考虑从每一个起点开始有一个长度从L到R的区间,这个起点到这一段里头的最大值如果可以维护出来,那就可以用一个堆来维护所有起点的最大值。 如果找到了最大值确定他是哪一段就将之前的{kai,L,R}分成{kai,L,zai 阅读全文