摘要: OI 回忆录么 嗯 太多太多的故事不好讲出来 下面的可能就很官方了 哈哈 相遇的日子 故事要从天宇的一则广告说起,什么编程相关的,具体是什么已经记不得了。 依旧像往常一样,家长抱着观望的态度了解着。而好奇的我就在网上搜索各种编程相关的信息。了解到了 c++,再爱奇艺上看什么黑马程序员,学 c++ 的 阅读全文
posted @ 2025-07-17 02:13 LUHCUH 阅读(40) 评论(2) 推荐(2)
摘要: 题目简述 有两个人玩游戏,初始每个人有一个集合。 每个人每次可以给对方集合中加一个没出现过的数字,且这个数字是自己集合里的两个数的差。 二人轮流操作,先不能操作的人败。 给一个正整数 \(R\),问二人初始集合分别为 \(2^{|R|}\) 个子集中的一个。 共 \(4^{|R|}\) 钟方案中,有 阅读全文
posted @ 2025-05-25 23:26 LUHCUH 阅读(17) 评论(0) 推荐(1)
摘要: 概述 对于给定的 \(n,k\) 我们需要算出,大小为 \(n\) 的内向基环树森林,且入度 \(\le\) \(k\) 的方案数。 为了避免名字冲突,我们令 \(N=n,K=k\) 复杂度为 \(O(n^3\ln n)\) 首先我们算 \(dp_n\) 表示 \(n\) 个点的无标号有根树,在满足 阅读全文
posted @ 2025-05-25 15:03 LUHCUH 阅读(82) 评论(1) 推荐(0)
摘要: 前言 真的,做题就想钻空子一样,灵活,巧妙的躲避一切障碍,多有趣啊(记得在那堂课上真心为蜡老师鼓掌) CF2077D Maximum Polygon 题目简述 给出一个数组 \(a_i\) 选出一个字典序最大的长度大于等于 \(3\) 的子序列 \(s_i\) 满足 \(2\cdot \max(s_ 阅读全文
posted @ 2025-04-23 10:41 LUHCUH 阅读(68) 评论(0) 推荐(0)
摘要: CF2077F AND x OR 题目简述 由一个数组 \(a\),一个数组 \(b\). 我们通过一些操作使得 \(a\) 变成 \(b\) 的最小代价 \(a_i:=a_i+1\),\(b_i:=b_i+1\) 这两种操作代价为 \(1\) 再做完前两种操作后,可以免费执行若干次 \(a_i:= 阅读全文
posted @ 2025-04-23 09:50 LUHCUH 阅读(20) 评论(0) 推荐(0)
该文被密码保护。 阅读全文
posted @ 2025-04-23 09:24 LUHCUH 阅读(6) 评论(0) 推荐(0)
摘要: Stoer-Wagner 简介 无向正权图上全局最小割 \(O(nm)\) 大概? 流程 基本原理,我们设答案割掉的边集为 \(c\),那么对于任意段对,\((s,t)\) 要么 \(c\) 是 \(s,t\) 的最小割,要么 \(s,t\) 在割完之后同属一个联通快。 于是我们自然地可以找两个点对 阅读全文
posted @ 2025-04-23 08:01 LUHCUH 阅读(20) 评论(0) 推荐(0)
摘要: PQ 树 算是 oi-wiki 的感性理解吧 参考实现 #include <bits/stdc++.h> using namespace std; void Fail() { cout << "NO" << '\n';exit(0); } struct PQT { enum co { white = 阅读全文
posted @ 2025-04-23 08:01 LUHCUH 阅读(17) 评论(0) 推荐(0)
摘要: Lyndon 分解 首先有性质,任意字符串存在唯一 \(Lyndon\) 分解。 Lyndon 串,须满足,Lyndon 串本身,是它的最小后缀。 Lyndon 分解,就是把字符串划分成若干 Lyndon 串 \(w_1,w_2,\cdots,w_n\),需满足 \(w_1\ge w_2\cdots 阅读全文
posted @ 2025-04-23 08:01 LUHCUH 阅读(67) 评论(0) 推荐(0)
摘要: 后言 除了每次操作,轮换维度之外,还有一种基于方差的写法 我们求出所有维度的方差,找到方差大的也就是混乱的维度进行划分 nth_element(begin,pos,end,cmp); 这个背下来吧就 #include <bits/stdc++.h> using namespace std; // t 阅读全文
posted @ 2025-04-23 08:01 LUHCUH 阅读(28) 评论(0) 推荐(0)