2 ~ 3 月学习总结

  • Grouping

随便 DP.

  • [PKUSC2018]最大前缀和

考虑加入某一个数会产生什么变化和前缀和的性质。

显然后缀和必须是一个负数。

f, g.

如果是一个负数,显然可以塞在 g 的后面

如果前缀 f 前面是正的,可以塞在 g 的前面。

是正的就塞在 f 的后面,然后这两种可以合并。

  • lgj

[l, r] +1 -1 -> 0

考虑差分数组,最后面补一个 0, 那么如果差分全是 0 这个原数组也差不多如此。

那么每次可以配对的选一对 [l, r] 就是差分数组绝对值和除以 2

  • 九省联考 2018] 一双木棋 chess

考虑到这个是一个下降的图形。直接搜索似乎就可以过了哥们。

P9145 [THUPC 2023 初赛] 世界杯

绝世好题,我是贺的。

P3523 [POI2011] DYN-Dynamite

二分一下 k.

然后记录一下两个相关 f,g 就是最远和最近的那个。

然后有几种情况。

  • 可以救火 finf

  • flim 表明放在 u 就是优秀的。 g0

  • g>lim 表明救不了自己,要父亲来救。 f\tomax(f,0)

P6419 [COCI2014-2015#1] Kamp

手绘好题!

可以画个图,发现不走最长链。

那么考虑换根时维护,这个要记录次长链,然后自己做一做找一找感觉。

  • P3588 [POI2015] PUS

17 mins 感觉不错。

学习了很多。

比如说那 k 个点,我们可以建立超级点 s 代表,连剩下的。

然后 uk(s,1), s(segment,0).

然后这个是一个 0/1 图, 可以考虑直接 拓扑排序。

线段树优化建图即可。

  • P2627 [USACO11OPEN]Mowing the Lawn G

双倍经验。

  • P1848 [USACO12OPEN]Bookshelf G

考虑单调栈预处理 hi 产生贡献的位置。

把 dp 数组可以考虑拍到线段树上,然后动态维护 f,f+h 这两个的最小值,随便打打 tag 就好了。

  • P6623 [省选联考 2020 A 卷] 树

不会做,进行了学习。

全局加一就是找到连续的 1 然后将其变为 0 就好了,这个很神奇。

附上一个打包的模板。

#define lc ch[u][0]
#define rc ch[u][1]

namespace trie {
	const int maxd = 21, M = N * (maxd + 1);
	int cnt = 0, ch[M][2], w[M], xorv[M];
	inline int node () { int u = ++ cnt; lc = rc = w[u] = xorv[u] = 0; return u;}
	inline void maintain (int u) {
		w[u] = xorv[u] = 0;
		if (lc) { w[u] += w[lc], xorv[u] ^= xorv[lc] << 1;}
		if (rc) { w[u] += w[rc], xorv[u] ^= xorv[rc] << 1 | (w[rc] & 1);}
		w[u] = w[u] & 1;
 	}
 	inline void insert (int & u, int k, int dep) {
 		if (! u) u = node();
 		if (dep > maxd) { w[u] ++; return ; }
 		insert(ch[u][k & 1], k >> 1, dep + 1), maintain(u);
	}
	inline int merge (int u, int v) {
		if (! u || ! v) return u | v;
		w[u] = w[u] + w[v], xorv[u] ^= xorv[v];
		lc = merge(lc, ch[v][0]), rc = merge(rc, ch[v][1]);
		return u;
	}
	inline void addone (int u) {
		swap(lc, rc);
		if (lc) addone(lc);
		maintain(u);
	}
} 
  • P3178

今日份弱智。

disv×kdisu×k 单点修改,区间修改,两颗线段树,我是小丑。

别又降智了哥们。

  • P7527

容易弱智。

考虑枚举 l, 然后转化为一个数点问题:

[prer<l,sufl>r]

这样的形式显然很简单,用主席树即可维护 (

CF / AT 的做题

posted @   Cust10  阅读(11)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 25岁的心里话
点击右上角即可分享
微信分享提示