随笔分类 -  算法基础:搜索

该文被密码保护。
posted @ 2022-03-01 15:21 RioTian 阅读(1) 评论(0) 推荐(0) 编辑
摘要:E - Subtree K-th Max 题意:给定一个以 1 为根的树,节点个数为 n(1e5),每个点都有自己的点权。需要回答 m(1e5) 次询问。每次询问给出两个数字 V,K,输出节点 V 的子树中第 K(20) 大的值。保 阅读全文
posted @ 2022-02-26 14:56 RioTian 阅读(65) 评论(1) 推荐(1) 编辑
摘要:补题链接:Here 本题代码由贺佬完成 这道题基本算一道 BFS 进阶题,有少许细节要小心 (WA1发。。 #include <bits/stdc++.h> #define x first #define y second using namespace std; using ll = long l 阅读全文
posted @ 2021-05-19 20:51 RioTian 阅读(42) 评论(0) 推荐(0) 编辑
摘要:做题之前,可以先到下面这个网站玩一会游戏: https://unixpapa.com/floodit/?sz=14&nc=6 游戏开发里面,比较常用的一个搜索算法是寻路算法,寻路算法里面用的最多的是A*算法以及很多优化的A*算法,对于只有4个方向的寻路算法,之前在网上见到有A*的位运算优化,性能非常 阅读全文
posted @ 2020-11-23 19:58 RioTian 阅读(321) 评论(0) 推荐(1) 编辑
摘要:Farthest Nodes in a Tree Given a tree (a connected graph with no cycles), you have to find the farthest nodes in the tree. The edges of the tree are w 阅读全文
posted @ 2020-11-10 23:08 RioTian 阅读(313) 评论(0) 推荐(1) 编辑
摘要:定义 先复制一则定义 A*算法在人工智能中是一种典型的启发式搜索算法 启发中的估价是用估价函数表示的: h(n)=f(n)+g(n) 其中f(n)是节点n的估价函数 g(n)表示实际状态空间中从初始节点到n节点的实际代价 h(n)是从n到目标节点最佳路径的估计代价。 另外定义h'(n)为n到目标节点 阅读全文
posted @ 2020-08-19 17:25 RioTian 阅读(265) 评论(0) 推荐(0) 编辑
摘要:记忆化搜索是啥 以 NOIP 2005 采药 为例: 山洞里有 M 株不同的草药,采每一株都需要一些时间 ti ,每一株也有它自身的价值 vi 。我会给你一段时间 T,在这段时间里,你可以采到一些草药。让采到的草药的总价值最大。 我不会动态规划,只会搜索,我就会直接写一个粗暴的 阅读全文
posted @ 2020-08-12 15:18 RioTian 阅读(363) 评论(0) 推荐(0) 编辑
摘要:题目链接:https://ac.nowcoder.com/acm/contest/1014/B 题目描述 In the game of Sudoku, you are given a large 9 × 9 grid divided into smaller 3 × 3 subgrids. For 阅读全文
posted @ 2020-08-10 14:13 RioTian 阅读(247) 评论(3) 推荐(1) 编辑
摘要:P1379 八数码难题 题目描述 在3×3的棋盘上,摆有八个棋子,每个棋子上标有1至8的某一数字。棋盘中留有一个空格,空格用0来表示。空格周围的棋子可以移到空格中。要求解的问题是:给出一种初始布局(初始状态)和目标布局(为了使题目简单,设目标状态为123804765),找到一种最少步骤的移动方法,实 阅读全文
posted @ 2020-07-28 20:11 RioTian 阅读(567) 评论(0) 推荐(1) 编辑
摘要:介绍下概念:简单来说,启发式搜索就是对取和不取都做分析,从中选取更优解(或删去无效解) 例题:P1048 采药 所有的启发式搜索都会有一个估价函数。下面是这一题的估价函数。 const int N = 105; struct Node { int a, b; // a代表时间,b代表价值 doubl 阅读全文
posted @ 2020-07-15 10:26 RioTian 阅读(286) 评论(0) 推荐(1) 编辑
摘要:Problem Description The twenty-first century is a biology-technology developing century. We know that a gene is made of DNA. The nucleotide bases from 阅读全文
posted @ 2020-06-12 21:01 RioTian 阅读(188) 评论(0) 推荐(0) 编辑
摘要:Descriptions: 一个人从(0,0)跑到(n,m),只有k点能量,一秒消耗一点,在图中有k个炮塔,给出炮塔的射击方向c,射击间隔t,子弹速度v,坐标x,y 问这个人能不能安全到达终点 要求: 1.人不能到达炮塔所在的坐标 2.炮塔会挡住子弹 3.途中遇到子弹是安全的,但是人如果停在这个坐标 阅读全文
posted @ 2020-06-12 15:26 RioTian 阅读(408) 评论(0) 推荐(0) 编辑
摘要:题目描述 简单介绍一下八数码问题: 在一个3×3的九宫格上,填有1~8八个数字,空余一个位置,例如下图: 1 2 3 4 5 6 7 8 在上图中,由于右下角位置是空的,你可以移动数字,比如可以将数字6 下移一位: 1 2 3 1 2 3 4 5 6 → 4 5 7 8 7 8 6 或者将数字 8 阅读全文
posted @ 2020-06-12 14:36 RioTian 阅读(166) 评论(0) 推荐(0) 编辑
摘要:题目: 给你两个容器,分别能装下A升水和B升水,并且可以进行以下操作 FILL(i) 将第i个容器从水龙头里装满(1 ≤ i ≤ 2); DROP(i) 将第i个容器抽干 POUR(i,j) 将第i个容器里的水倒入第j个容器(这次操作结束后产生两种结果,一是第j个容器倒满并且第i个容器依旧有剩余,二 阅读全文
posted @ 2020-06-10 22:07 RioTian 阅读(164) 评论(0) 推荐(0) 编辑
摘要:原文来源:https://blog.csdn.net/dark_cy/article/details/88926435 深搜原理 深搜,顾名思义,是深入其中、直取结果的一种搜索方法。 如果深搜是一个人,那么他的性格一定倔得像头牛!他从一点出发去旅游,只朝着一个方向走,除非路断了,他绝不改变方向!除非 阅读全文
posted @ 2020-06-08 11:00 RioTian 阅读(452) 评论(0) 推荐(0) 编辑
摘要:算法介绍 A*(念做:A Star)算法是一种很常用的路径查找和图形遍历算法。它有较好的性能和准确度。本文在讲解算法的同时也会提供Python语言的代码实现,并会借助matplotlib库动态的展示算法的运算过程。 A*算法最初发表于1968年,由Stanford研究院的Peter Hart, Ni 阅读全文
posted @ 2020-05-16 21:11 RioTian 阅读(2777) 评论(1) 推荐(0) 编辑
摘要:"POJ 3268 Silver Cow Party" 奶牛派对:有分别来自 N 个农场的 N 头牛去农场 X 嗨皮,农场间由 M 条有向路径连接。每头牛来回都挑最短的路走,求它们走的路的最大长度? 们其实都是“图” 最短路 dijkstra 解决任意两点最短路的变种 用floyd的话会TLE,$1 阅读全文
posted @ 2020-05-14 11:37 RioTian 阅读(113) 评论(0) 推荐(0) 编辑
摘要:题目链接:https://cn.vjudge.net/problem/UVA-11624 题意: 给出一个 n×m 的矩阵,上面有的格子能走,有的格子是墙不能走。 有若干个点是火源,火每分钟都往上下左右蔓延一格(不能越墙)。又给出一个点是Joe的出发点,他只要能在不碰到火的前提下走出该矩阵,就算逃生 阅读全文
posted @ 2020-05-09 20:51 RioTian 阅读(154) 评论(0) 推荐(0) 编辑
摘要:Oil Deposits Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 12461 Accepted Submission(s): 7245 阅读全文
posted @ 2020-05-09 16:04 RioTian 阅读(212) 评论(0) 推荐(0) 编辑
摘要:第一次解决双向BFS问题,拆分两个出发点分BFS搜索 阅读全文
posted @ 2020-05-09 15:36 RioTian 阅读(133) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示