日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

UVa 10047,独轮车

發布時間:2025/7/14 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 UVa 10047,独轮车 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

題目鏈接:https://uva.onlinejudge.org/external/100/10047.pdf

題目鏈接:http://vjudge.net/contest/132239#problem/B

《訓練指南》P308

沒什么好說的,學習一下劉汝佳的風格。

#include <bits/stdc++.h>using namespace std;#define INF 0x3f3f3f3fint R,C; const int maxr = 25 + 5; const int maxc = 25 + 5; char maze[maxr][maxc]; int sr,sc,tr,tc; int ans;struct State {int r,c,dir,color;State(int r,int c,int dir,int color) : r(r),c(c),dir(dir),color(color) {} };const int dr[] = {-1,0,1,0}; const int dc[] = {0,-1,0,1}; int d[maxr][maxc][4][5],vis[maxr][maxc][4][5];queue <State> Q;void update (int r,int c,int dir,int color,int v) {if(r<0||r>=R||c<0||c>=C) return;if(maze[r][c]=='.'&&!vis[r][c][dir][color]){Q.push(State(r,c,dir,color));vis[r][c][dir][color] = 1;d[r][c][dir][color] = v;if(r==tr&&c==tc&&color==0) ans = min(ans,v);} }void bfs(State st) {Q.push(st);d[st.r][st.c][st.dir][st.color] = 0;vis[st.r][st.c][st.dir][st.color] = 1;while(!Q.empty()){st = Q.front(); Q.pop();int v = d[st.r][st.c][st.dir][st.color] + 1;update (st.r,st.c,(st.dir+1)%4, st.color, v);update (st.r,st.c,(st.dir+3)%4, st.color, v);update (st.r+dr[st.dir],st.c + dc[st.dir],st.dir,(st.color+1)%5,v);} }int main() {int cases = 0;//freopen("input.txt","r",stdin);while(scanf("%d%d",&R,&C),R){for(int i=0;i<R;i++){scanf("%s",maze[i]);{for(int j=0;j<C;j++){if(maze[i][j]=='S'){sr = i;sc = j;}else if(maze[i][j]=='T'){tr = i;tc = j;}}}}maze[sr][sc] = maze[tr][tc] = '.';ans = INF;memset(vis,0,sizeof(vis));bfs(State(sr,sc,0,0));if(cases>0) printf("\n");printf("Case #%d\n",++cases);if(ans==INF) printf("destination not reachable\n");else printf("minimum time = %d sec\n", ans);}return 0; }

?

轉載于:https://www.cnblogs.com/TreeDream/p/5874981.html

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的UVa 10047,独轮车的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。