文章作者: 小明同學
版權聲明: 本部落格所有文章除特別聲明外,均採用CC BY-NC-SA 4.0 授權協議。轉載請註明來源 小明の雜貨鋪!
相關推薦

2025-01-11
Good Bye 2024: 2025 is NEAR A - E
2053A - Tender Carpenter 123456789101112131415161718192021222324252627#include <bits/stdc++.h>using namespace std;using ll = long long;int main() { int t; cin >> t; while (t--) { int n; cin >> n; vector<int> a(n); for (int i = 0; i < n; i++) { cin >> a[i]; } int cnt = 0; for (int i = 1; i < n; i++) { int j = i - 1; cnt += (2 * a[i] > a[j]...
2025-04-01
【算法杂谈 + 好题分享】图论中的懒标记 LazyTag 思想
本系列教程「以题带讲」,以典型题目为载体,着重讲解知识点的适用条件和使用方法,而规避复杂的理论推导。 我不擅长数学,对 CF 和区域赛的数学题,从简单计算到数论组合都望而却步。「tag 是数学吗那不做了。」 可能是因为网上的教程大多是罗列定理,给出大段证明,最后放几个例题链接。我没有耐心和能力读完整篇文章。

2024-10-27
Codeforces Round 982 (Div. 2)
A. Rectangle Arrangement 取最大值的正确性:凸阶梯形平移后即是矩形,其周长与矩形周长相等。 123456789101112131415161718192021222324252627#include <bits/stdc++.h>using namespace std;using ll = long long;int main() { ios::sync_with_stdio(false); cin.tie(nullptr); int t; cin >> t; while (t--) { int n; cin >> n; int X = 0, Y = 0; while (n--) { int x, y; cin >> x >> y; X = max(X, x); Y = max(Y, y);...

2025-03-11
Codeforces Round 1009 (Div. 3) E - G
2074E - Empty Triangle Hint 1 随机化 平面上 nnn 个点是毫无规律的,就算每个点问一次也只能问到 3×753\times 753×75 个点,这个数远小于 150015001500,想要让每个点地位平等,考虑随机。 Hint 2 从一个已知的三角形往里缩 相比包含特殊点的三角形,不包含的三角形其面积相对较小。而且包含特殊点的三角形内部一定有答案。如果问到一个包含特殊点的三角形,想法是往里缩,直到找到答案。 具体地,如果问到 x−y−zx-y-zx−y−z 里面包含 uuu,可能会考虑继续问 x−y−ux-y-ux−y−u 或 x−u−zx-u-zx−u−z 或 u−y−zu-y-zu−y−z。这里有好几种选择,用随机数选。 123456789101112131415161718192021222324252627282930#include <bits/stdc++.h>using namespace std;mt19937_64...

2025-02-28
Educational Codeforces Round 176 (Rated for Div. 2) A-D
edu 场神秘分类讨论,神秘推式子。 2075A - To Zero 一次偶数那之后都是偶数。 1234567891011121314151617181920212223#include <bits/stdc++.h>using namespace std;int main() { int J; cin >> J; while (J--) { int n, k; cin >> n >> k; int res = 0; if (n & 1) { n = max(0, n - k); res++; } k--; res += (n + k - 1) / k; cout << res << endl; } return 0;} 2075B - Array...
2024-05-08
樹上問題 - 樹形 DP
Tree 1234567891011121314151617181920212223242526272829303132333435363738struct node { string data; int l, r;}t[10005];void pretvs(int k) { // 先序遍历:先遍历根节点,然后遍历左节点,最后遍历右节点 if (k == 0)return; cout << t[k].data; if (t[k].l != 0) pretvs(t[k].l); if (t[k].r != 0) pretvs(t[k].r);}void intvs(int k) {// 中序遍历:先遍历左节点,然后遍历根节点,最后遍历右节点(大概可以理解为把树平面投影至二维从左到右) if (k == 0)return; if (t[k].l != 0) intvs(t[k].l); cout << t[k].data; if (t[k].r...
評論
公告
用於備份小明的腦子。
———— Tips ————
在右下角可切換爲「简体中文」。
部分評論從QQ空間或puq抓取,由於技術有限,無法顯示正確的位置和時間,望見諒。
———— 本站常規欄目 ————
周日中午:高中回憶《中外历史纲要》
周二清晨:語錄體《主机註記》
周三下午:有事大家谈/掷地有声
周三/六晚上:算法學習筆記
———— 計劃中 ————
美食評測, 每日一圖, ...
———— Tips ————
在右下角可切換爲「简体中文」。
部分評論從QQ空間或puq抓取,由於技術有限,無法顯示正確的位置和時間,望見諒。
———— 本站常規欄目 ————
周日中午:高中回憶《中外历史纲要》
周二清晨:語錄體《主机註記》
周三下午:有事大家谈/掷地有声
周三/六晚上:算法學習筆記
———— 計劃中 ————
美食評測, 每日一圖, ...