![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
暴力
LInguistic凛
QAQ
展开
-
HDU-2612 Find a way +BFS
本来想用双向BFS过的,但发现我写的双向BFS只能求出时长最小的状态,而不是M与Y花费的总时间,所以就导致样例过了而得到WA,自己还以为没错的奇怪状态。 另外要注意的是在此题中,家和KFC是可以通行的。 所以思路就是分别以M和Y为起点,一共BFS两次,然后统计两人到能到达的KFC的总时间,取最小值就行了,其实还可以优化。 AC代码+附赠的两个样例: #include<cstdio> #...原创 2018-12-09 16:34:12 · 114 阅读 · 0 评论 -
HDU-1495 非常可乐+BFS
要注意题目的意思,由样例 4 1 3 答案是3 ,可以推测,题目是要求将可乐分为两等份放在两个容器中。 由于当S为奇数时一定无解,所以只有当S为偶数时进行处理。可以使用二维数组进行判重,因为可乐总数是确定的,知道两个容器中的可乐量就能知道第三个容器中的可乐量。 实现在三个容器中倒可乐的方式有点复杂,还好不久之前看紫书时刚好记下来一个方法。要注意理解。 AC代码如下: #include<cst...原创 2018-12-09 16:59:09 · 138 阅读 · 0 评论 -
UVA-11212 Editing a Book IDA*算法
IDA*算法,也算是最近学习的一道坎了,概念容易懂,但应用起来就让我有点头大了。写的不怎么好。 这道题的粘贴与复制部分没想清楚,看了一下其他人的博客才知道自己错在哪里的。用紫书上的策略三剪枝的话,时间效率变高了一半,但还是很慢,应该是循环用多了的原因,还可以优化。 #include<bits/stdc++.h> using namespace std; int n,maxn,a[10]...原创 2018-12-06 23:31:35 · 107 阅读 · 0 评论 -
HDU-1973 Prime path 素数表+BFS
题目链接 题意就是给一个四位素数,让找一个最短路径让它变成目标素数。要注意路径中的所有数都必须是四位素数,且一次只能改动一位数字。 考虑到一个素数最多只有四种后继状态,所以可以先将1000到10000之间的素数选出来,然后BFS一遍就行了。 具体实现见代码及注释。 #include<cstring> #include<queue> #include<cstdio&gt..原创 2018-12-12 10:22:04 · 185 阅读 · 0 评论 -
UVA 1262 Password + DFS
题意:给两个6行5列的字母矩阵,找到密码:密码中的每个字母都在两个矩阵中的对应列出现。在这样的密码中找到字典序第k大的密码。 我的思路:先找出两个矩阵相同列中相同的元素,并将它们排序,在验证一定有解后递归打印字典序第k大的密码就行了。 具体实现见代码: #include<bits/stdc++.h> using namespace std; int T,k; char grap1[6]...原创 2019-01-29 13:45:50 · 166 阅读 · 0 评论