HDU 1180 詭異的樓梯

2022-08-26 07:12:08 字數 650 閱讀 3205

題目鏈結

這個題目本身不是很難,就是分情況看『|』和『-』討論方向而已,不過題目的意思要理解正確

即在碰到樓梯時已走了t步那麼踩樓梯就應該是t+1步如果是『|』那麼if((t+1)%2==0)  則還是『|』;否則是『-』;

我在設定『|』。『-』時錯了,害的我搞了很久才發現,做題應該先在草稿子上寫好框架和主要程式,這樣能減少程式的邏輯錯誤。

敲**前多想想,多想幾種思路,從中選最優的一種思路來敲。

**:#include

#include

#include

#include

#include

#include

using namespace std;

int ex,ey,n,m;

int dx[4]= ;

int dy[4]= ;

char map[30][30];

int vis[30][30];

struct node

;queueq;

void bfs(int stx,int sty)

int i;

for(i=0; i<4; i++)

}getchar();

}bfs(stx,sty);

}return 0;

}

HDU 1180 詭異的樓梯

題意 題意應該很好理解,就是從s到t的最少步數,只是加了乙個樓梯。思路 一看就是廣搜,找最少的步數,harry只能每次走到相鄰的格仔而不能斜走,每移動一次恰好為一分鐘,並且harry登上樓梯並經過樓梯到達對面的整個過程只需要一分鐘,harry從來不在樓梯上停留.並且每次樓梯都恰好在harry移動完畢...

HDU 1180 詭異的樓梯

bfs問題。題意是說爬樓梯的時候,有些樓梯是 有些是 而且每隔一分鐘就互相變化形態。只能上下,只能左右。爬樓梯的過程中,會變的樓梯不能停留,其他的可以停留。爬樓梯需要乙個單位時間,假如是 表明乙個單位時間從它左邊到它右邊或者 右邊到左邊。樓梯停留多次沒有意義,特殊樓梯只有2種旋轉狀態,多乙個wait...

hdu 1180 詭異的樓梯

要注意,雖然樓梯有時不能過,但是我們可以在樓梯前等一下,等到樓梯達到我們需要的狀態時再過,其實不用優先佇列也是可以的.具體自己去想吧.好久沒寫這麼長的 了 include include includeint m,n int tx,ty,sx,sy int visit 21 21 int dir 4...