HDU ACM 1253 解題報告

2022-04-08 16:54:24 字數 1072 閱讀 3988

簡單的bfs

注意以下幾點:

*思路首先分析可走的路的總數是否大於等於最短路徑數(最短路徑數=a+b+c-2),如果小於怎樣都無法到達出口

*所以可以直接輸出-1,還有總的時間數小於最短時間(最短時間數=a+b+c-2)也是無法到達出口,除去以上情況

*然後使用bfs進行搜尋就可以了

*如果想看**論壇有我就不貼了

鬱悶,做出來還是要1531ms

哎,**能力還是不行

code

#include 

<

iostream

>

#include 

<

queue

>

using

namespace

std;

struct

node

;int

map[

51][

51][

51];

inta,b,c,t,s;

bool

escape;

intdir[6][

3] =,,,,,};

void

bfs(

intx,

inty,

intz,

inttime)

if(n.t 

>

t)break

;for

(inti =

0;i 

<6;i

++)q.push(p);

map[tx][ty][tz] =1

;}}}

intmain()

escape 

=false;if

((a*b*

c -wall 

b+c-

2) ||(t 

b+c-

3))bfs(0,

0,0,

0);if(escape)

printf(

"%d\n

",s);

else

printf(

"-1\n");

}return0;

}

ACM題解報告 HD1253

該題目是乙個比較經典立方體迷宮問題,要求在給定的時間內從始點 0,0,0 逃到出口 a 1,b 1,c 1 這裡我採用的是bfs 寬度優先搜尋 如下 includeusing namespace std int map 55 55 55 a,b,c,times,visit 55 55 55 int ...

Block Voting 解題報告

這道題做的有點狼狽,效率不高,差一點就tle的ac了。看status裡的,ac的時間大多數都是0ms的。肯定有乙個更有效率的演算法的。下面說下我的狼狽演算法。出處 http acm.jlu.edu.cn joj showproblem.php?pid 1223 問題描述 求每個party的權值。第i...

Safebreaker 解題報告

又是吉林大學一道acm題目,題目很簡單,直接暴力解決。出處 http acm.jlu.edu.cn joj showproblem.php?pid 1718 問題描述 對乙個給定數0000 9999 根據一系列猜測,判斷這個數是否存在,存在的話,是否唯一 例如 3321,給定數 作出猜測,1223 ...