随笔分类 -  搜索

摘要:题目链接:https://ac.nowcoder.com/acm/problem/21303 参考链接:https://ac.nowcoder.com/acm/problem/blogs/21303 思路:dp,动态规划的重点在于可以忽略中间步骤,适用于只是想知道方案数或者可行性的题目,因此可以对题 阅读全文
posted @ 2021-10-03 20:47 AtomsH 阅读(110) 评论(0) 推荐(1)
摘要:原题:Problem - 6983 (hdu.edu.cn) 题意:将一段1~n的区间二分成线段树,当区间的长度r-l+1<=k时,停止二分,统计线段树节点个数。 分析:对区间长度记忆化搜索 题解: #include <bits/stdc++.h> #define ll long long usin 阅读全文
posted @ 2021-08-06 15:46 AtomsH 阅读(74) 评论(0) 推荐(0)
摘要:原题: 180. 排书 - AcWing题库 题意: 给你n个数的任意排列,现在要你通过从中选出一段,然后插入某个位置的操作将这n个数按顺序依次排列,同时操作次数最少。 分析: 普通的dfs肯定会超时间复杂度,所以要用IDA*,也就是迭代加深+估价函数。 代码有三个函数,f()表示估价函数。因为一次 阅读全文
posted @ 2021-07-22 23:22 AtomsH 阅读(58) 评论(0) 推荐(0)
摘要:原题: AcWing 170. 加成序列 - AcWing 题意:满足如下条件的序列 X(序列中元素被标号为 1、2、3…m)被称为“加成序列”: X[1]=1 X[m]=n X[1]<X[2]<…<X[m−1]<X[m] 对于每个 k(2≤k≤m)都存在两个整数 i 和 j (1≤i,j≤k−1. 阅读全文
posted @ 2021-07-18 18:48 AtomsH 阅读(64) 评论(0) 推荐(0)
摘要:原题: AcWing 175. 电路维修 - AcWing 题意:给你一个图,由/和\构成,你可以旋转其中的一格,使其从一种状态变为另一种状态,问如何旋转最少的次数,使可以从左上角点沿着路径走到右下角点,输出该次数。 分析:双端队列 将题目转换成,一个地图,对于顺着原有路径的边,边权为0,对于垂直于 阅读全文
posted @ 2021-07-07 08:43 AtomsH 阅读(60) 评论(0) 推荐(0)
摘要:原题: 1076. 迷宫问题 - AcWing题库 题意:给一个n*n的迷宫,1表示墙,0表示路,让你找出从左上角(0,0)点走到右下角(n-1,n-1)点的最短路径,并且输出这条最短路径上的每一个坐标。 分析: 很明显是bfs,但在想的时候因为对bfs理解不够清楚所以想简单了,本来以为只要输出bf 阅读全文
posted @ 2021-07-04 19:57 AtomsH 阅读(147) 评论(0) 推荐(0)