首页 > TAG信息列表 > Maze

8.22

exercise 1.组合总数 package org.example.api.test.exercise; import java.util.*; public class zuhezongshu { //例: canditates[2,3,5,7] target=7 //output:[[7],[2,3,5]] public static void main(String[] args) { int [] p={2,3,5,7}; Syst

dfs

1.迷宫 public class Point {   int x;   int y;   public Point(int x, int y) {     this.x = x;     this.y = y;   } }public class keda2 {   List<Point> temp =new LinkedList<>();   List<Point> result =new LinkedList<>();   int

攻防世界 reverse maze wp

写在前面:这道题不会,网上查了很多wp,很多都写的不够具体,我这里再总结一下 第一步是常规操作,用exeinfope查看文件是否带壳,并顺带查看文件是32位还是64位 文件是64位的 然后用ida打开文件,查看main函数 根据划线处语句,判断出flag一共有24个字符,除去“nctf{}”,还有18个字符 另:ida asci

【题解】HDU5094 Maze

题目描述: 这个故事发生在“星际迷航”的背景下。 “星际争霸”的副队长史波克落入克林贡的诡计中,被关押在他们的母亲星球Qo'noS上。 企业的上尉詹姆斯·T·柯克(James T. Kirk)不得不乘宇宙飞船去救他的副手。幸运的是,他偷走了史波克所在的迷宫地图。 迷宫是一个矩形,它有n行垂直和m

1018 maze 优先队列+bfs

链接:https://ac.nowcoder.com/acm/contest/23156/1018来源:牛客网 题目描述 小明来到一个由n x m个格子组成的迷宫,有些格子是陷阱,用'#'表示,小明进入陷阱就会死亡,'.'表示没有陷阱。小明所在的位置用'S'表示,目的地用'T'表示。 小明只能向上下左右相

buuctf-ACTF2020新生赛-oruga

buuctf-ACTF2020新生赛-oruga 太晚了,已经困了,过后再写脚本 本以为这是个常规(指排好顺序就能出的题) 没想到不仔细看还真难看出来 伪代码流程图 在能顺利通过前面几个条件判断条件下,再通过while(!unk_55A6FF765020),所以我一条条看下来发现每次只有当特定字符输入时,你才能够完成这两份

求迷宫最短通道

递归求解迷宫最短通道的总步长。输入一个迷宫,求从入口通向出口的可行路径中最短的路径长度。为简化问题,迷宫用二维数组int maze[10][10]来存储障碍物的分布,假设迷宫的横向和纵向尺寸的大小是一样的,并由程序运行读入, 若读入迷宫大小的值是n(3<n<=10),则该迷宫横向或纵向尺寸都是n,规定

走迷宫!

自动化走迷宫 做maze题时不用自己在看花眼的maze里找路线了!!! 1.策略   为了能回溯,也就是没路走时可以往回走, 这里采用了栈存储之前的路线,maze则采用了vector二位数组存储。   那么简单地想,每一点位对四个方向进行检测,不断走下去,直到没路可走,便出栈往回走。这样会碰到什么问

Easy_Maze

Easy_Maze 记录一道简单但花了我些时间的题 呜呜呜(不会好了不会好了) 收集信息 跳了 静态分析 直接上图 可以看到这是逻辑很清晰的c++代码 只需要找到迷宫在哪就行了 动调找迷宫 迷宫字串与我们输入的无关,没必要也不要去写脚本算迷宫,动调找就好了 现在在step2函数里了,执行x

光度迷宫算法

package mainimport ( "fmt" "os")type point struct { i, j int}func (p point) add(step point) point { p.i += step.i p.j += step.j return p}func (p point) at(maze [][]int) (int, bool) { if p.i < 0 || p.i >= len(maze) {

【网格问题】leetcode505.迷宫II

题目: 由空地和墙组成的迷宫中有一个球。球可以向上下左右四个方向滚动,但在遇到墙壁前不会停止滚动。当球停下时,可以选择下一个方向。 给定球的起始位置,目的地和迷宫,找出让球停在目的地的最短距离。距离的定义是球从起始位置(不包括)到目的地(包括)经过的空地个数。如果球无法停在

【维护】【线段树】CF413E Maze 2D

【维护】【线段树】CF413E Maze 2D 题目大意 给定一个\(2\times n\) 的矩阵,黄色方格代表不能通行,蓝色格子代表畅通无阻,同时对每一个方格进行编号,求编号为x到编号为y的最短路。 思路 先不考虑是具体地从哪里到哪里,而是先进行一个笼统地分析。 单单去考虑从第i行到第j行的最短路。

专题一搜索 A - Biggest Number

题目You have a maze with obstacles and non-zero digits in it:You can start from any square, walk in the maze, and finally stop at some square. Each step, youmay only walk into one of the four neighbouring squares (up, down, left, right) and you cannotwalk i

第四篇英语翻译

重点词汇: terminate v.结束,终止,达到终点站。 layout n.布局,设计,排版。 maze n,迷宫。v.发晕,使迷惑。 出处:https://acs.jxnu.edu.cn/problem/NOIOPJCH02051159 Maze  2000ms  65536K 描述: Acm, a treasure-explorer, is exploring again. This time he is in a special maze, i

一个“一笔画”问题的求解器

回老家跟侄子玩,因为不想惯着他玩手机的臭毛病,就跟他玩一些纸笔游戏,比如这个: 从起点出发抵达终点,如何在不走重复格子的前提下,走过尽可能多的格子,并吃到尽可能多的金币?其中,黑色格子是墙壁不能走。 感觉还挺有意思的,不妨就来写一个“一笔画”的求解器,找出所有最优的轨迹。 思路: 可以

buu-re-[HDCTF2019]Maze(花指令)

exeinfope查看信息 脱壳 ida分析  首先jnz跳到下一条指令,相当于没跳转,先nop掉(选中前面的地址,然后Edit-Patch program-Assemble,输入no)  下面call了一个错误的地址。先按d转化为数据(不能直接全nop掉,因为里面可能有有用的数据)  然后逐个nop,Edit-Patch program-Change Byte,

深度优先查找之迷宫问题

1 maze = [ 2 [1, 1, 1, 1, 1, 1, 1, 1, 1, 1], 3 [1, 0, 0, 1, 0, 0, 0, 1, 0, 1], 4 [1, 0, 0, 1, 0, 0, 0, 1, 0, 1], 5 [1, 0, 0, 0, 0, 1, 1, 0, 0, 1], 6 [1, 0, 1, 1, 1, 0, 0, 0, 0, 1], 7 [1, 0, 0, 0, 1, 0, 0, 0, 0, 1], 8 [1

迷宫DFS经典解法

#include <iostream> #include <string> #include <cmath> #include <vector> #include <map> #include <algorithm> using namespace std; int m, n; vector<vector<int>> maze; vector<vector<int>> tmp; vect

re -04 buuctf [HDCTF2019]Maze

Maze 拿到后发现upx壳,脱壳后扔进ida 然后发现这个跳转,跳转到下一行,调用了一个不存在的函数,可以判断其为花指令,jnz可以直接nop掉,call调用的数据中可能存在有效代码。 按d将其转换为字节数据 删掉第一个字节,将数据转换为代码 但此时左侧text还是红色的,要把它封装为函数,选

Borg Maze POJ - 3026

附上带中文的题目 这个题的题意就是求S和A组成的最小生成树,这题的一个对大部分人来说的一个坑点是读入,我一开始也是被卡了,发现算出来的答案贼大,然后找bug发现读入都没对,后来又用的gets,然后又发现少读了1行,原因是因为在第一行输入2个数字后会有一个回车,这个回车会占一个gets,所

Golang 广度优先搜索算法走迷宫

从 0 开始按上左下右的顺序一层一层往外探索 代码实现 package main import ( "fmt" "os" ) // ReadMaze 读取迷宫 func ReadMaze(filename string) [][]int { var row, col int // 行,列 file, err := os.Open(filename) // 打开文件 if

老鼠出迷宫之递归回溯

1.设计思路  2.创建迷宫  3.策略(下->右->上->左) package study; public class Test02 { public static void main(String[] args) { //定义二维数组 int[][] map = new int[8][7]; //把第一行与最后一行设置为1 for (int i = 0; i <

poj3026 Borg Maze(bfs+prim)

  原题链接   可以在A点或S点分裂, 每次只能走一个分裂出来的点, 那么可以得知最后的答案一定是点与点之间相连的边权的总和. 边权我们可以通过bfs计算任意两个点之间的距离得到  (吐槽: 为什么越界也是WA...调了好久才发现)     1 #include <iostream> 2 #include <cm

攻防世界 REVERSE 新手区/maze

攻防世界 REVERSE 新手区/maze 老规矩先查壳,没加壳而且是64位的 用IDA64位打开,找到main函数F5查看伪代码 这是一个迷宫题,必然是有迷宫图在里面,然后走的路径就是输出的flag 接下来还是分析代码 __int64 __fastcall main(__int64 a1, char **a2, char **a3) { sig

2021-07-11

2021-07-11 算法: 放在实验室,明天上传 第五十六场双周赛 一共有四道题 统计平方和三元组的数目迷宫中离入口最近的出口求和游戏规定时间内到达终点的最小花费 1、统计平方和三元组的数目 一个 平方和三元组 (a,b,c) 指的是满足 a2 + b2 = c2 的 整数 三元组 a,b 和 c 。 给你一