摘要: UOJ (洛谷的通信题评测炸了) 题意描述 简化一下两个函数的意思。 label 函数就是给定你一棵无根树,你可以将原来的点的编号(\(i \in [0,n-1]\))一一映射到一个新的区间(\(i \in [0, k]\),其中 \(n - 1 \leq k\)),返回后来的编号。 find_ne 阅读全文
posted @ 2025-08-08 01:00 tanjiaqi 阅读(7) 评论(0) 推荐(0)
摘要: Hoof and Brain P 题解 Link 模拟考考场上没干出来,赛后几分钟过了。 首先考虑一个简单情况,如果一个节点的出度为 \(0\) ,那么这个节点就是B的必胜点,我们可以将这个点删掉,重复这样的操作,使得每个节点都有出度。 除了上面这一种情况,B赢的情况就只有使得两个棋子重叠了。要使两 阅读全文
posted @ 2025-02-08 11:19 tanjiaqi 阅读(14) 评论(0) 推荐(0)
摘要: SPOJ QTREE4 - Query on a tree IV Link 非常好的QTREE4,使我的大脑 \(Part.1\) 题目大意 每一个节点都有一个颜色(在黑和白中切换),有两种操作,第一种是反转一个节点的颜色,第二种是查询全局最大的两个白点之间的距离。 \(Part.2\) 思路 首先 阅读全文
posted @ 2025-01-24 16:16 tanjiaqi 阅读(28) 评论(0) 推荐(0)
摘要: 8月27日模拟赛 T1 友谊赛 Link 思路 考虑贪心。找到整棵树的最长链,分配给 \(m\) ,然后删掉这条链,再找最长链,分配给 \(m - 1\) ,以此类推,就是一个长链剖分。 代码 #include <bits/stdc++.h> #define FASTIO ios::sync_wit 阅读全文
posted @ 2025-08-29 20:08 tanjiaqi 阅读(1) 评论(0) 推荐(0)
摘要: Three Servers 题解 Link 首先,设 \(f_{i,j,k}\) 表示考虑前 \(i\) 个请求,有两个服务器的时间为 \(j\) 和 \(k\) 的可达性。 此时空间复杂度为 \(O(n^3t^2)\)。无法通过此题。 优化一 发现 \(f\) 为 \(0/1\) 数组,考虑使用 阅读全文
posted @ 2025-08-19 17:24 tanjiaqi 阅读(7) 评论(0) 推荐(0)
摘要: 8月11日 [USACO12MAR] Haybale Restacking G Link 思路 贪心加数学。 设 \(i\) 这块土地向左运 \(L_i\)。然后可以列出表达式。 \[A_i - L_i + L_{i + 1}=B_i \hspace{0.2cm}(for \hspace{0.2cm 阅读全文
posted @ 2025-08-12 22:49 tanjiaqi 阅读(6) 评论(0) 推荐(0)
摘要: 先备个份: check 有向图的仙人掌: #include <bits/stdc++.h> #define FASTIO ios::sync_with_stdio(false);cin.tie(0);cout.tie(0); using namespace std; using ll = long 阅读全文
posted @ 2025-05-27 21:17 tanjiaqi 阅读(5) 评论(0) 推荐(0)
摘要: link 题目大意,给一个正整数 \(n\),求 \(\sum_{i=1}^n \frac{n}{gcd(i, n)}\) 的值。 显然题目的答案为 \(\sum_{d|n} d\varphi(d)\),定义为 \(f(n)\)。 现在,我们假设 \(n=k\times p^q\),其中 \(p\) 阅读全文
posted @ 2025-04-09 16:38 tanjiaqi 阅读(28) 评论(0) 推荐(0)
摘要: 引入 CHT 又叫 凸包优化,是一种利用一次函数(斜率)来优化 Dp 的一种方法。 它的独特之处在于,传统斜率优化依靠的是一个一个的点,而凸包优化是利用一条条直线来优化,省去了一些码量。 我们用一道例题引入。 例1 HDU-3480 Dp 暴力 Link 题目是说,将 \(n\) 个数划分到 \(m 阅读全文
posted @ 2025-03-16 08:31 tanjiaqi 阅读(141) 评论(0) 推荐(0)