题目链接:http://poj.org/problem?id=1077 使用A*搜索中的估价函数要小于等于真实值才能更快的收敛,本题中已经花费的开销是从start状态到目前状态的花费,也就是dist,可以将字符串映射到一个整数表示开销,如果在hash中没有这个键则表示 这个state并没与进入过队列 ...
分类:
编程语言 时间:
2020-06-21 15:35:50
阅读次数:
54
Contest Info 传送门 Solved A B C D E F G H I J K L M 8 / 13 O O - Ø - O - O - - Ø Ø Ø O 在比赛中通过 Ø 赛后通过 ! 尝试了但是失败了 - 没有尝试 Solutions A - Palindrome 可以将问题转化为 ...
分类:
其他好文 时间:
2020-06-20 22:24:19
阅读次数:
106
题目链接:https://www.acwing.com/problem/content/176/ 由于状态数量的限制,我们可以考虑捆绑人与箱子的状态,我们已知每次箱子的移动一定是由人引起的,可以考虑状态是箱子的位置和箱子推动的时候人的方向,用另一个BFS搜索人从当前位置 到达箱子旁边的该方向的位置但 ...
分类:
编程语言 时间:
2020-06-20 15:40:38
阅读次数:
70
题目链接:http://poj.org/problem?id=3322 这题并不难,理解了状态空间的纬度就很容易实现,其中状态是坐标、躺着的起始位置,躺着的形式。 搜索题目比较考验写代码的能力。 代码: #include<iostream> #include<cstdio> #include<que ...
分类:
编程语言 时间:
2020-06-20 10:36:25
阅读次数:
50
我想我大概是应届选手里最不紧张的那一批了/cy 本来心态也是紧张到爆,不知所措的。 然而大概是那天躺在操场上看云的时候。 忽然想到,这林林总总一年的OI学习生活,我过得得有多快乐啊。 不管是和其他竞赛选手还是和文化课选手相比,甚至包括信息组的大家比,我自己是明白自己过的要潇洒畅快自由得多。 所以有什 ...
分类:
其他好文 时间:
2020-06-20 00:42:43
阅读次数:
64
题目链接:http://poj.org/problem?id=1190 剪枝的常用思考策略:优化搜索顺序(从决策数量越少的位置开始决策)、排除冗余的等效的操作、可行性剪枝、最优性剪枝、上下界剪枝,其中在可行性剪枝方面可以利用“未来期望进行剪枝” 要充分利用不等式关系进行放缩,将不可能的状态进行剪枝, ...
分类:
编程语言 时间:
2020-06-19 16:36:53
阅读次数:
62
在 百度 上 搜索 代数几何 相关 的 内容, 会看到 一个 搜索关键词 “学代数几何会死人的” , 代数几何 很难吗 ? 论 技巧, 不如 竞赛题, 论 综合能力, 不如 微积分 。 学习 代数几何 的 难点 是, 抽象 的 数学语言, 内容太多, 形式泛滥 。 学习 代数几何 需要 长时间 的 ...
分类:
其他好文 时间:
2020-06-19 15:43:59
阅读次数:
179
题目链接:https://www.acwing.com/problem/content/description/166/ 计算有向无环图中每个点可达的点的数量,可以先通过拓扑排序确定点的拓扑序,因为在一个点处理之前,他所能到达的所有点都要先被处理,所以我们处理的顺序 只要是按照拓扑排序的逆序处理就能 ...
分类:
编程语言 时间:
2020-06-18 19:19:19
阅读次数:
63
题目链接:http://poj.org/problem?id=2442 给定一个M*N的矩阵,要求从每一行中都取出一个数然后累加,问最小的N个累积和为多少。使用堆可以在O(MNlogN)时间复杂度内求出。 M行的最大取法一定是通过前M-1行的最大取法+第M行取数然后求前N大获取的,所以有归纳法可以考 ...
分类:
编程语言 时间:
2020-06-18 13:19:12
阅读次数:
67
题目链接:http://poj.org/problem?id=3764 我们可以在O(32*n)时间内求出一个长度为n的序列中取两个数的最大异或,而树中的异或有如下公式:path[x]=path(root,x) xor path(root,y),所以处理出path(root,i)之后就简化成了 简单 ...
分类:
编程语言 时间:
2020-06-18 10:41:11
阅读次数:
56