P1126 機械人搬重物

2021-08-28 09:46:46 字數 741 閱讀 7761

#includeusing namespace std;

const int inf=1000000000;

int a[55][55]={};

int sx,sy,ex,ey;

int n,m;

int mincnt=inf;

int vis[100][100];

mapmp;

struct node;

void bfs(node st)else if((i==1&&now.dir==3)||(i==2&&now.dir==4)||(i==3&&now.dir==1)||(i==4&&now.dir==2))

} for(int j=1;j<=3;j++)

}} }

}int main()

} for(int i=0;i<=n;i++)

for(int i=0;i<=m;i++)

char d;

scanf("%d %d %d %d %c",&sx,&sy,&ex,&ey,&d);

node t;int dd=mp[d];

t.dir=dd;t.step=0;t.xx=sx;t.yy=sy;

bfs(t);

if(mincnt>=inf)

cout<<-1;

else cout《注意往東縱座標加,往西減,往南加,往北減(lz就是卡在這裡。。。)

再乙個點,這裡只能用vis二維陣列記錄起點到每個點的最短距離,不然麻煩很大。。。。

P1126 機械人搬重物

機械人移動學會 rmi 現在正嘗試用機械人搬運物品。機械人的形狀是乙個直徑1.6公尺的球。在試驗階段,機械人被用於在乙個儲藏室中搬運貨物。儲藏室是乙個n m的網格,有些格仔為不可移動的障礙。機械人的中心總是在格點上,當然,機械人必須在最短的時間內把物品搬運到指定的地方。機械人接受的指令有 向前移動1...

P1126 機械人搬重物

機械人移動學會 rmi 現在正嘗試用機械人搬運物品。機械人的形狀是乙個直徑 1.6公尺的球。在試驗階段,機械人被用於在乙個儲藏室中搬運貨物。儲藏室是乙個n times mn m的網格,有些格仔為不可移動的障礙。機械人的中心總是在格點上,當然,機械人必須在最短的時間內把物品搬運到指定的地方。機械人接受...

P1126 機械人搬重物

這道題本來沒啥好說的,但細節實在比較多,被坑了好多次。首先輸入的是格仔圖,需要轉化成點圖,具體操作是a i j a i 1 j 1 a i j 1 a i 1 j 1 最坑的乙個點在於,平時寫寬搜的時候,遇到出邊界或者不能訪問的點時,都是直接進入下一層迴圈 continue 但在這道題中,由於可以走...