Heavenaef 的每日亿唐

作者太唐了,于是他打算记录他(和别人)每天犯下的唐氏错误。

不定时长期更新中。

2025/10/17

上午

摆了,看洛谷神贴去了。

下午

Luogu P11816 / LibreOJ 5520 / QOJ 1250 Pionki

题目简介:一个 \(A \times B \times C\) 三维棋盘上有若干个棋子,每次操作可以将一个棋子像右 / 上 / 后移动,求若干次操作后是否能达到给定的状态。

\(A \le 10000, B, C \le 6\)

本质上是求二分图完美匹配。注意到 \(B\)\(C\) 很小,直接逐层状压轮廓线 DP 即可。

把轮廓线压成如下的结构体:

struct Stat {
	ll val;
	array<ll, 7> h; // 第 i 行选了几个数。
	Stat() {}
	Stat(ll x) : val(x), h({x, x, x, x, x, x, x}) {}
	Stat(array<ll, 7> h) : val(0), h(h) {
		for(ll i = 1; i <= y; i++) {
			val += h[i] * pw[i];
		}
	}
};

注意到这里开了大小为 \(7\) 的数组。

但在 DP 转移过程中,我们要 check 一下下一行选了几个数:

for(ll l = st[k].h[j + 1]; l <= st[k].h[j]; l++)

于是当 \(j = 6\) 时,数组下标美美越界。

下午 & 晚上

摆了,看洛谷神贴去了。

(两个学校炸出 \(231\) 楼也够 NB 的)

2025/10/18

上午

神秘四黑模拟赛,T1 忘交,T3 Corrupt 不小心改成了 Ask。

\(140 \to 70\)

2025/10/22

上午

气死我了我去。

太唐了,必须复更。

T1 100->30,T2 忘加 freopen,T3 神秘 CE。

\(235 \to 45\)

posted @ 2025-10-17 11:16  Heavenaef  阅读(6)  评论(0)    收藏  举报