
搜索
文章平均质量分 53
bifanwen
梦想是遥不可及而奇幻莫测的,它给我全部的力量,它把我叫醒。
展开
-
POJ3187 Backward Digit Sums题解
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar原创 2021-07-17 20:12:17 · 128 阅读 · 1 评论 -
POJ3669 Meteor Shower 题解
博客园同步原题链接题目不难。肯定考虑宽搜。首先搞定一个事实:一个格子不会重复走。如果可以重复走,则必然有可以替代它的不重复走的不劣的方案。很明显:如果你走到一个格子又 可以不 走回来,那就有了替代方案;如果你走到一个格子又 不得不 走回来,那就不走这 222 步,也有了替代方案。因此,不重复走格子。这非常重要。幸亏这题不像某些搜索题一样(就特定时间砸在上面,以后还是可以走的),还要考虑原地停留,考虑重复走格子的复杂情况。然后就是模拟了。先预处理出每个格子最早的砸掉的时间,然后宽搜去走就行了。时原创 2021-07-16 20:11:29 · 158 阅读 · 0 评论 -
POJ3009 Curling2.0 题解
原题链接其实这题不难。考虑直接搜索所有情况,最多有 410=10485764^{10} = 1048576410=1048576 种可能的走法,因此深搜即可简单解决问题。注意到需要数组的变化,因此,如果要用宽搜的话很可能记录状态不方便(直接内存炸掉?),深搜传数组是个很好的选择。注意几个点:如果某个方向第一个就是个 block,那么你不可以朝那个方向打然后干掉这个 block,规则是 stone 必须要滑行,不能直接被档在原地。如果 stone 出界就直接失败,而不是停在边界。block 被撞倒原创 2021-07-16 13:33:35 · 237 阅读 · 0 评论 -
CF27E Number With The Given Amount Of Divisors 题解
博客园同步原题链接简要题意:求最小的有 nnn 个因数的数 sss。n≤103n \leq 10^3n≤103 ,保证 s≤1018s \leq 10^{18}s≤1018.考虑质因数分解:s=∏i=1kpiais = \prod_{i=1}^k p_i^{a_i}s=i=1∏kpiaipip_ipi 为质数。那么 sss 的因数个数就会是∏i=1k(ai+1)\prod_{i=1}^k (a_i + 1)i=1∏k(ai+1)考虑最大的 pip_ipi 会是几呢?2∗3∗5原创 2020-07-19 15:56:43 · 211 阅读 · 0 评论 -
P1379 八数码难题 题解(双向宽搜)
原题链接简要题意:给定一个 3×33 \times 33×3 的矩阵,每次可以把空格旁边(四方向)的一个位置移到空格上。求到目标状态的最小步数。前置知识:单向宽搜的写法OK\text{OK}OK,现在我们来考虑双向宽搜。假设 AAA 和 BBB 两个人被困在了迷宫的两个角落,现在他们首先要互相找到对方;他们都会分身术。你认为下面哪一种方法最快:AAA 主动分身去各个路口分支找 BBB,BBB 原地待命。BBB 主动分身去各个路口分支找 AAA,AAA 原地待命。AAA 和 BB原创 2020-06-21 20:54:34 · 419 阅读 · 0 评论 -
P2831 愤怒的小鸟 题解
博客园同步原题链接简要题意:平面直角坐标系的第一象限有若干绿猪,小鸟要通过若干条函数解析线来消灭它们。每个小鸟可以把所有 y=ax2+bx(a<0)y=ax^2 + bx (a<0)y=ax2+bx(a<0) 上的 (x,y)(x,y)(x,y) 的所有绿猪消灭,当然没有绿猪就是白走。问最少多少次后可以消灭所有的绿猪。TTT 组数据。前记实际上,之前写过一篇 骗分导论,里面有点口出狂言,既然自己说了能 60pts60pts60pts 那还不来填坑?算法一对于 70%70 \原创 2020-06-10 22:01:00 · 332 阅读 · 0 评论 -
P1073 最优贸易 题解
原题链接简要题意:给定一个图,每个点有点权。一个人从 111 号点出发,可以任意走路径,也可以任意停止旅行。每个点的点权表示水晶球的价格,初始这个人没有水晶球,可以在任意点卖出,也可以在任意点买。只能买卖一次。当然也可以不卖。求他的最大盈利。(赚不了则输出 000)本题是 NOIP 2009\text{NOIP 2009}NOIP 2009 提高组 第三题.算法一对于 10%10 \%10% 的数据,1≤n≤61 \leq n \leq 61≤n≤6.爆搜即可,随你什么姿原创 2020-06-06 17:44:41 · 365 阅读 · 1 评论 -
数树 学习笔记
博客园同步没有找到网上的题目,应该是道民间练习题。并不是本人写的题,只是转载清晰一点吧。原题链接简要题意:给定一个无向图,求连通块为树的个数。显然,对于一个连通块,只要不出现环 那它就是树了。那么就异常简单,一个个 dfs\text{dfs}dfs 就搞定了。时间复杂度:O(n+m)O(n+m)O(n+m).实际得分:100pts100pts100pts.细节:孤点也算一个连通...原创 2020-05-01 16:30:55 · 386 阅读 · 0 评论 -
P2324 [SCOI2005]骑士精神 题解
原题链接简要题意:给定一个初始棋盘,每次一个马可以跳到空位(不考虑蹩腿问题)。求到达目标棋盘的最小步数。本题其实是 八数码难题 的一个强化版,可以去看看 P1379 八数码难题 题解.首先本题肯定是 搜索。状态:棋盘压缩成字符串。答案:记录步数。如何实现:深度优先搜索,即 dfs\texttt{dfs}dfs.咦?dfs\texttt{dfs}dfs 的效率不是严格...原创 2020-04-09 18:29:12 · 328 阅读 · 0 评论 -
P1784 数独 题解
原题链接前置知识:浅谈 Dancing Links X\text{Dancing Links X}Dancing Links X 算法注:这次的前置知识如果你不会又不看,代码和思路肯定都看不懂的。简要题意:填满一个未完成的数独。首先数独的规则是:每行所填数不得重复,为 111 ~ 999 之间。每列所填数不得重复,为 111 ~ 99...原创 2020-04-09 14:15:22 · 358 阅读 · 0 评论 -
浅谈 Dancing Links X 算法
前置知识:一维链表。(单向,双向,循环)部分集合运算,如 ⋂\bigcap⋂,⋃\bigcup⋃.前言在计算机科学中,X算法可用来求解精确覆盖问题。精确覆盖问题 是哪一类问题呢? XXX 算法又是什么高深的算法呢?背景你的同学通过某种算法迅速 AC\text{AC}AC 了 P1784 数独,然后他兴致勃勃地 带领学生 1s1s1s 搞定数独竞赛 。小时候,你玩数独;...原创 2020-04-09 13:41:56 · 752 阅读 · 0 评论 -
P1985 [USACO07OPEN]翻转棋 题解
原题链接简要题意:给定一个 010101 棋盘,每次可以翻转一个“十”字形(即一个格子连同它四方向的相邻格子,出界则不翻)。求在哪些格子上翻转(十字形的中心)可以使得 翻转后全 000 且 方案字典序最小 。首先 n,m≤15n,m \leq 15n,m≤15,本着面向数据范围做题的原理,分析算法。算法一枚举翻转哪些格子进行验证。时间复杂度:O(2n×m×n×m)O(2^{n \tim...原创 2020-04-05 12:34:20 · 391 阅读 · 0 评论 -
P3956 棋盘 题解
原题链接简要题意:从 1,11,11,1 走到 n,nn,nn,n;每次走过相同颜色的格子不用魔法,走过不同颜色(但有颜色)的格子用 111 个魔法;走到一个有颜色的格子上可以暂时将它变成某种颜色然后走上去,用 222 个魔法;但是这种魔法是暂时的,只要你离开那个格子,那个格子就会变回没有颜色的样子,并且不能连续使用 222 次。求到终点的最小魔法。(不好意思,题目中实际说的是“金币”,但理解...原创 2020-04-04 21:17:26 · 388 阅读 · 2 评论 -
P5022 旅行 题解
原题链接简要题意:给定一棵树(或基环树),每个节点只能至多回溯一次,求遍历整棵树的最小字典序。基环树概念:树多一条边,即树上出现且仅出现一个环。作为 NOIP2018 Day2 T1\texttt{NOIP2018 Day2 T1}NOIP2018 Day2 T1,确实有些难度。不过我们从部分分开始想。对于 60%60 \%60% 的数据,给定的是...原创 2020-04-04 18:51:48 · 551 阅读 · 3 评论 -
P1379 八数码难题 题解
原题链接简要题意:给定一个 3×33 \times 33×3 的矩阵,每次可以把空格旁边(四方向)的一个位置移到空格上。求到目标状态的最小步数。前置知识:深度优先搜索(dfs\texttt{dfs}dfs).将这题作为 宽度优先搜索(bfs\texttt{bfs}bfs) 的模板题讲解!首先,众所周知 dfs\texttt{dfs}dfs 的搜索树类似于这样:其中,每个矩形都...原创 2020-04-04 11:33:16 · 1756 阅读 · 2 评论 -
P5663 加工零件 题解
博客园同步原题链接简要题意:给定一个图,每次询问从 xxx 节点开始,yyy 步能不能达到 111 号节点。算法一这也是我本人考场算法。就是 深搜 。因为你会发现,如果 xxx 用 y%2y \% 2y%2 步能到 111 节点,那肯定 yyy 步能到。原因是:剩下的 y−y%2y - y \% 2y−y%2 是偶数,只要重复走一条边多次即可。我们用 fi,0/1f_{i,0/1}...原创 2020-04-03 11:23:07 · 464 阅读 · 0 评论 -
P1135 奇怪的电梯 题解
原题链接简要题意:给定 aia_iai,求从 AAA 节点走到 BBB 节点的最小步数。若当前在 iii 节点,则可以一步到达 i−aii-a_ii−ai 或 i+aii+a_ii+ai 节点。(如果不合法则不走)首先这题肯定是搜索,具体怎么搜因人而异。因为我比较喜欢朴素的 dfs\texttt{dfs}dfs,因此就说说做法。显然,如果你打下一个这样的搜索:inline voi...原创 2020-04-02 08:42:00 · 532 阅读 · 0 评论 -
P1120 小木棍 [数据加强版] 题解
原题链接简要题意:把若干 ≤50\leq 50≤50 的小木棍拼成若干长度相同的长木棍(一个小木棍也可以作为一根长木棍)。求可以拼成的长木棍的最小长度。暴力出奇迹一看数据范围,n≤65n \leq 65n≤65.这一看就是指数级复杂度 我还没见过什么 O(n5)O(n^5)O(n5) 的算法。。首先考虑 dfs\texttt{dfs}dfs,枚举长木棍的长度,然后用 dfs\textt...原创 2020-04-01 20:18:44 · 330 阅读 · 0 评论 -
P4753 River Jumping 题解
原题链接简要题意:一条宽度为 LLL 的河上有若干石头,每次只能在石头上跳跃(一开始从 000 开始跳),且跳跃距离的下限为 SSS.问能否一个来回将所有石头(包括河对面的那块)全跳一遍;如果能,则输出方案。算法一二分。注意到,我们可以对 跳跃上限 进行二分。然后贪心地,每次跳 在下限之上离自己最近的 一块石头。当然如果 这块石头距离超过上限 说明当前验证无解。然后记录答案即可。...原创 2020-04-01 16:20:34 · 211 阅读 · 0 评论 -
P2346 四子连棋 题解
原题链接2020.4.1在这里立个 flag\text{flag}flag:一周内 AC\texttt{AC}AC 不了这道题目,我就 倒 ! 立 ! 洗 ! 头 !本人还没 AC\texttt{AC}AC,不过呢,谔谔,先整理下思路吧。简要题意:给定一个棋局,双方轮流将自己的棋子走到空位(任意方先走),问使得“四子连棋”(即四个子在一条直线上,斜线也可以)的最小步数。显然,4×44 ...原创 2020-04-01 16:19:03 · 561 阅读 · 0 评论