会员
周边
新闻
博问
闪存
赞助商
YouClaw
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
Pythonenjoy
路虽远,行则将至;事虽难,做则必成。若如此,此行终达彼岸。
博客园
首页
新随笔
联系
订阅
管理
[置顶]
文章索引
摘要: 算法目录: 浅谈随机化 题解目录: P14556 [ROI 2013 Day2] 星际航程 题解 UVA11350 Stern-Brocot Tree 题解 P14121 [SCCPC 2021] Don't Really Like How The Story Ends 题解 P1962 斐波那契数
阅读全文
posted @ 2026-03-03 22:25 Python_enjoy
阅读(8)
评论(0)
推荐(0)
2026年3月12日
题解:P15705 [2018 KAIST RUN Spring] Zigzag
摘要: 很有趣的一道题,尝试使用滑动窗口的思想。 以 \(start\) 标记当前有效子段的起始位置,\(end\) 遍历序列作为子段终点。当 \(end\) 位置导致连续三个元素单调时,说明当前子段不符合要求,将起点更新为 \(end-1\);若未出现连续单调的三个元素,则更新最长有效子段的长度。记录的最
阅读全文
posted @ 2026-03-12 13:31 Python_enjoy
阅读(2)
评论(0)
推荐(0)
题解:P14213 [COI 2010] 橡树 / HRASTOVI
摘要: 比较模板的离散化 使用两个 map<int, vector<int>>: a[y]:存储所有纵坐标为 \(y\) 的点的横坐标列表 b[x]:存储所有横坐标为 \(x\) 的点的纵坐标列表 读入所有点后,对每个 vector 排序,以便二分查找。 定义函数 \(f(v, l, r)\),返回数组中值
阅读全文
posted @ 2026-03-12 13:00 Python_enjoy
阅读(2)
评论(0)
推荐(0)
题解:P15647 [ICPC 2022 Tehran R] Magic with Cards
摘要: 很明显,这道题是一道 BFS。 首先做操作转化:Riffle 操作下,前 \(n\) 张的位置 \(x\) 会变为 \(2x-1\),后 \(n\) 张的位置 \(x\) 会变为 \(2 (x-n)\);Scuffle 操作下,奇数位置 \(x\) 变为 \(x+1\),偶数位置 \(x\) 变为
阅读全文
posted @ 2026-03-12 12:59 Python_enjoy
阅读(1)
评论(0)
推荐(0)
题解:P15539 [CCC 2026 J4] Snail Path
摘要: 这题是非常好的题,适合用来巩固 STL 的运用。 我们使用一个 map 来记录有没有访问过这个格子,然后按照题意模拟。切记一个一个格子走。如果当前这个格子没访问过,就标记一下;如果访问过了,就给答案加一。最后输出答案即可。 设每次移动的最大距离为 \(k\),时间复杂度为 \(\Theta(km\l
阅读全文
posted @ 2026-03-12 12:57 Python_enjoy
阅读(4)
评论(0)
推荐(0)
2026年3月3日
题解:P14556 [ROI 2013 Day2] 星际航程
摘要: 这道题是一道有一定思维难度的 DP 题目。 首先讲 \(\Theta(n^2)\) 做法:预处理每一个行星最远能够直接到达的那个行星,记作 \(nxt_i\)。接着上转移方程。设 \(f_i\) 为到达第 \(i\) 个行星需要执行的最小加注次数。初始 \(f_1=0,f_2=f_3=\cdots=
阅读全文
posted @ 2026-03-03 22:16 Python_enjoy
阅读(10)
评论(0)
推荐(0)
题解:UVA11350 Stern-Brocot Tree
摘要: 一道很简单的题,按照题意模拟就可以了。 设 \(la = 0, lb = 1, ra = 1, rb = 0\),代表 \(L = \frac{la}{lb},R = \frac{ra}{rb}\)。每次移动设 \(MID = \frac{mida}{midb}=\frac{la+ra}{lb+rb
阅读全文
posted @ 2026-03-03 22:16 Python_enjoy
阅读(6)
评论(0)
推荐(0)
题解:P14121 [SCCPC 2021] Don't Really Like How The Story Ends
摘要: 今天考试的题,顺便写一个题解。 思路 这道题让我们还原一个 DFS 序, 思路很简单:我们从第一个点开始,如果当前的点到的下一个点没有边了话,就建一条边。然后跳转到下一个点。 思路清楚了,只要注意代码实现就可以了。 AC 代码: #include <bits/stdc++.h> #define in
阅读全文
posted @ 2026-03-03 22:16 Python_enjoy
阅读(3)
评论(0)
推荐(0)
题解:P1962 斐波那契数列
摘要: 题目大意 求斐波那契额数列的第 \(n\) 项。 做法 我们看到数据范围就会知道:不可以用递推。 此时我们可以使用矩阵来加速! 想到下面这个式子: \[\begin{bmatrix} F_n \\ F_{n-1} \end{bmatrix} = \begin{bmatrix} F_{n-1} \\
阅读全文
posted @ 2026-03-03 22:15 Python_enjoy
阅读(6)
评论(0)
推荐(0)
题解:P14148 错觉
摘要: 很明显的随机化,直接开始分析。 我们设一开始的 \(p\) 为标准排列,计算此时的 \(\bigoplus\limits_{i=1}^n (p_i+k\times i)\),然后进行多次随即操作,每次随机挑选两个位置 \(a,b\),交换 \(p_a,p_b\),计算此时的值(注意这里的计算必须是
阅读全文
posted @ 2026-03-03 22:15 Python_enjoy
阅读(4)
评论(0)
推荐(0)
下一页
公告