uva 1600 可越過障礙物的bfs

2021-08-15 11:36:32 字數 805 閱讀 8284

#include #include #include #include using namespace std;

const int maxn=30;

int t,n,m,k;

int mao[maxn][maxn],vis[maxn][maxn][maxn];//三維陣列第三維表示已經走過的障礙物的個數,值仍舊表示是否訪問過

int dx= ,dy= ;

struct p

p,q;

int bfs()

{ queuequ;

p.x=1;

p.y=1;

p.step=0;

if(mao[1][1]==1) p.obs=1;

else p.obs=0;

qu.push(p);

while(!qu.empty())

{q=qu.front();

//cout << q.x << ":" << q.y << endl;

qu.pop();

if(q.x==n && q.y==m) return q.step;

vis[q.x][q.y][q.obs]=1;

for(int i=1; i<=4; i++)

{int nx=q.x+dx[i];

int ny=q.y+dy[i];

if(nx<=n && ny<=m && nx>=1 && ny>=1)//先判斷座標是否合法

{p.x=nx;

p.y=ny;

if(mao[nx][ny]==1)//如果下乙個位置是障礙物

{if(q.obs

leetcode leetcode160相交鍊錶

編寫乙個程式,找到兩個單鏈表相交的起始節點。如下面的兩個鍊錶 在節點 c1 開始相交。示例 1 輸入 intersectval 8,lista 4,1,8,4,5 listb 5,0,1,8,4,5 skipa 2,skipb 3 輸出 reference of the node with valu...

160 複雜介面動畫變化

我們還是乙個左選單和乙個主面板 我們在移動的同時還要給兩個介面加上動畫 1.左選單 縮放 透明度,平移 2.主面板 縮放 3.背景 亮度 我們讓左選單關閉的時候,變小,變透明 主面板變大 背景的亮度變暗 我們在onviewpositionchanged 方法中去實現 我們來個方法dispatchui...

LineageOS 正式發布 16 0 版

lineageos 是乙個社群驅動的 基於 android 移動平台的開源作業系統 也稱 android 發行版 是此前已停止維護的 cyanogenmod 專案的後繼者。lineageos 支援眾多移動裝置,且在原生 android 之外引入了諸多獨特的修改與功能。該專案於日前正式發布了基於 an...