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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

27行代码AC_迷宫 2017年第八届蓝桥杯A组第一题(暴力、仿迷宫)

發(fā)布時間:2024/2/28 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 27行代码AC_迷宫 2017年第八届蓝桥杯A组第一题(暴力、仿迷宫) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
題目描述

X星球的一處迷宮游樂場建在某個小山坡上。
它是由10x10相互連通的小房間組成的。
房間的地板上寫著一個很大的字母。
我們假設(shè)玩家是面朝上坡的方向站立,則:
L表示走到左邊的房間,
R表示走到右邊的房間,
U表示走到上坡方向的房間,
D表示走到下坡方向的房間。
?
X星球的居民有點懶,不愿意費力思考。
他們更喜歡玩運氣類的游戲。這個游戲也是如此!
?
開始的時候,直升機把100名玩家放入一個個小房間內(nèi)。
玩家一定要按照地上的字母移動。
迷宮地圖如下:

UDDLUULRUL
UURLLLRRRU
RRUURLDLRD
RUDDDDUUUU
URUDLLRRUU
DURLRLDLRL
ULLURLLRDU
RDLULLRDDD
UUDDUDUDLL
ULRDLUURRR

請你計算一下,最后,有多少玩家會走出迷宮?
而不是在里邊兜圈子。


分析與思考

第一眼看上去以為是搜索, 讀完題發(fā)現(xiàn)是一道暴力枚舉題。

思路:
先思考一下,若迷宮規(guī)模為n,則某點在迷宮中最多只能走 n*n步(蛇形), 因此, 在對每個點遍歷時,可以用num記錄步數(shù),當num超過n*n+5后,表明這條路沒辦法走出去, 反之,如果在遍歷期間i或j越界,則說明可以走出去。 最后統(tǒng)計總數(shù)即可。

改進:

  • 可以設(shè)置一個與迷宮規(guī)模等大的二維int數(shù)組, 全部置0, 如果某點能走通, 則置1, 這樣,在遍歷每個點前,先判斷對應(yīng)的int數(shù)組是否等于1, 若等于1, 則直接結(jié)束此次循環(huán), 會大大提高效率。
  • 使用define定義數(shù)組的規(guī)模, 可以在測試時方便的調(diào)節(jié)數(shù)組大小。

  • 代碼展示

    #include<bits/stdc++.h> #define N 10 using namespace std; char a[N][N]; //記錄迷宮 int b[N][N]; //如果該點可以走通,則置1。 int main() {for(int i = 0; i < N; i++) cin>>a[i]; //輸入迷宮memset(b, 0, sizeof(b));int sum1 = 0; //記錄能走出去的次數(shù) for(int i = 0; i < N; i++) //遍歷 for(int j = 0; j < N; j++) {int sum = 0;int i1=i, j1=j; //代替i,j進行值的變化 while(sum < N*N+10) { if(b[i1][j1]==1) break; //如果走到的這個點 b[i][j]=1,則代表能走出去 sum++;if(a[i1][j1] == 'U') i1--;else if(a[i1][j1] == 'D') i1++;else if(a[i1][j1] == 'L') j1--;else if(a[i1][j1] == 'R') j1++;if(i1<0 || i1>=N || j1<0 || j1>=N) break;}if(sum != N*N+10) { sum1++; b[i][j]=1; } //如果sum遍歷到頭,則說明走不出去 }cout << sum1 << endl; return 0; }

    這世界就是,一些人總在晝夜不停的努力,而另外一些人,起床就發(fā)現(xiàn)世界已經(jīng)變了。 加油,陌生人!

    總結(jié)

    以上是生活随笔為你收集整理的27行代码AC_迷宫 2017年第八届蓝桥杯A组第一题(暴力、仿迷宫)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。