1. 程式人生 > >第八屆藍橋杯C++A組 迷宮

第八屆藍橋杯C++A組 迷宮

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

迷宮地圖如下:
------------
UDDLUULRUL
UURLLLRRRU
RRUURLDLRD
RUDDDDUUUU
URUDLLRRUU
DURLRLDLRL
ULLURLLRDU
RDLULLRDDD
UUDDUDUDLL
ULRDLUURRR
------------
請你計算一下,最後,有多少玩家會走出迷宮? 
而不是在裡邊兜圈子。

請提交該整數,表示走出迷宮的玩家數目,不要填寫任何多餘的內容。
如果你還沒明白遊戲規則,可以參看一個簡化的4x4迷宮的解說圖:

p1.png

思路:列舉每一個位置,看是否能走出去。答案:31
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<cmath>
#include<iostream>
#include<algorithm>
#include<string>
#include<vector>
#include<queue>
#include<map>  
#include<set>
using namespace std;

char m[15][15]={"UDDLUULRUL","UURLLLRRRU","RRUURLDLRD","RUDDDDUUUU","URUDLLRRUU","DURLRLDLRL","ULLURLLRDU","RDLULLRDDD","UUDDUDUDLL","ULRDLUURRR"};
int vis[15][15];
int ans=0;

void f(int x,int y)
{
	while(1)
	{
		if(x<0||x>9||y<0||y>9)
		{
			ans++;
			break;
		}
		if(vis[x][y])
			break;
		vis[x][y]=1;
		switch(m[x][y])
		{
			case 'U':x--;break;
			case 'D':x++;break;
			case 'L':y--;break;
			case 'R':y++;break;
		}
	}
}
int main()
{
	int i,j;
	for(i=0;i<10;i++)
	{
		for(j=0;j<10;j++)
		{
			memset(vis,0,sizeof(vis));
			f(i,j);
		}
	}
	cout<<ans<<endl;
	return 0;
}

相關推薦

藍橋C++A 迷宮

標題:迷宮X星球的一處迷宮遊樂場建在某個小山坡上。它是由10x10相互連通的小房間組成的。房間的地板上寫著一個很大的字母。我們假設玩家是面朝上坡的方向站立,則:L表示走到左邊的房間,R表示走到右邊的房間,U表示走到上坡方向的房間,D表示走到下坡方向的房間。X星球的居民有點懶,

2017年藍橋 C++A國賽 第二題 生命遊戲 題解

生命遊戲 康威生命遊戲是英國數學家約翰·何頓·康威在1970年發明的細胞自動機。 這個遊戲在一個無限大的2D網格上進行。 初始時,每個小方格中居住著一個活著或死了的細胞。 下一時刻每個細胞的狀態都由它周圍八個格子的細胞狀態決定。 具體來說:

藍橋C++A 顛倒的價牌

標題:顛倒的價牌小李的店裡專賣其它店中下架的樣品電視機,可稱為:樣品電視專賣店。其標價都是4位數字(即千元不等)。小李為了標價清晰、方便,使用了預製的類似數碼管的標價籤,只要用顏色筆塗數字就可以了(參見p1.jpg)。這種價牌有個特點,對一些數字,倒過來看也是合理的數字。如:

藍橋Java A決賽試題

1.標題:圖書排列將編號為1~10的10本書排放在書架上,要求編號相鄰的書不能放在相鄰的位置。請計算一共有多少種不同的排列方案。注意,需要提交的是一個整數,不要填寫任何多餘的內容。答案:479306思路:全排或者DFSimport java.util.*; public cl

2017藍橋C/C++ B省賽-等差素數列

.... spa 素數表 等差數列 打出 span 註意 i++ shai 標題:等差素數列 2,3,5,7,11,13,....是素數序列。 類似:7,37,67,97,127,157 這樣完全由素數組成的等差數列,叫等差素數數列。 上邊的數列公差為30,長度為

2017藍橋C/C++ B省賽-購物單

藍橋杯 分享 com mage log 全選 nbsp alt -- 標題: 購物單 小明剛剛找到工作,老板人很好,只是老板夫人很愛購物。老板忙的時候經常讓小明幫忙到商場代為購物。小明很厭煩,但又不好推辭。 這不,XX大促銷又來了!老板夫人開出了長長的購物單,都

藍橋CB(國賽)第二題 磁磚樣式

algorithm 內容 else PE 進制數 提交 數字 是個 tex 小明家的一面裝飾墻原來是 3*10 的小方格。 現在手頭有一批剛好能蓋住2個小方格的長方形瓷磚。 瓷磚只有兩種顏色:黃色和橙色。 小明想知道,對於這麽簡陋的原料,可以貼出多少種不同的花樣來。

2017藍橋 C/C++C真題及題解

1. 標題:貪吃蛇長度 +-------------------------------------------------+ |                                                 | |    H######        

2016藍橋C++B題:四平方和

題目: 四平方和 四平方和定理,又稱為拉格朗日定理: 每個正整數都可以表示為至多4個正整數的平方和。 如果把0包括進去,就正好可以表示為4個數的平方和。 比如: 5 = 0^2 + 0^2

藍橋C/C++B五題】

我是個小白,各位大佬勿噴,最喜歡程式碼填空題,蒙都能蒙對 答案:f(x/10,k); 標題:取數位求1個整數的第k位數字有很多種方法。以下的方法就是一種。// 求x用10進製表示時的數位長度 in

2017年藍橋 C/C++B 真題分析與題解(未完待續)

一、前言 二、題目型別與分值分佈 1. 結果填空 (1)購物單 5’ (2)等差素數列 7’ (3)承壓計算 13’ (4)方格分割 17’ 2. 程式碼填空 (5)取數位 9’ (6

藍橋c/c++省賽題目整理

namespace 有用 第三題 提取 多余 電子 其中 位置 十分 第一題 標題: 購物單 小明剛剛找到工作,老板人很好,只是老板夫人很愛購物。老板忙的時候經常讓小明幫忙到商場代為購物。小明很厭煩,但又不好推辭。 這不,XX大促銷又來了!老板夫人開出了長

藍橋C++B 牌型種數

牌型種數小明被劫持到X賭城,被迫與其他3人玩牌。一副撲克牌(去掉大小王牌,共52張),均勻發給4個人,每個人13張。這時,小明腦子裡突然冒出一個問題:如果不考慮花色,只考慮點數,也不考慮自己得到的牌的先後順序,自己手裡能拿到的初始牌型組合一共有多少種呢?請填寫該整數,不要填寫任何多餘的內容或說明文字。

藍橋JAVA B【省賽】

一.標題: 購物單小明剛剛找到工作,老闆人很好,只是老闆夫人很愛購物。老闆忙的時候經常讓小明幫忙到商場代為購物。小明很厭煩,但又不好推辭。這不,XX大促銷又來了!老闆夫人開出了長長的購物單,都是有打折優惠的。小明也有個怪癖,不到萬不得已,從不刷卡,直接現金搞定。現在小明很心煩

藍橋 java B 日期問題

標題:日期問題 小明正在整理一批歷史文獻。這些歷史文獻中出現了很多日期。小明知道這些日期都在1960年1月1日至2059年12月31日。令小明頭疼的是,這些日期採用的格式非常不統一,有采用年/月/日的,有采用月/日/年的, 還有采用日/月/年的。更加麻煩的是,年份也都

2015藍橋C++B七題:牌型種數

題目: 牌型種數 小明被劫持到X賭城,被迫與其他3人玩牌。 一副撲克牌(去掉大小王牌,共52張),均勻發給4個人,每個人13張。 這時,小明腦子裡突然冒出一個問題: 如果不考慮花色,只考慮點數,也不考慮自己得到的牌的先後順序,自己手裡能拿到的初始牌型組合

藍橋C++B 四平方和

四平方和四平方和定理,又稱為拉格朗日定理:每個正整數都可以表示為至多4個正整數的平方和。如果把0包括進去,就正好可以表示為4個數的平方和。比如:5 = 0^2 + 0^2 + 1^2 + 2^27 = 1^2 + 1^2 + 1^2 + 2^2(^符號表示乘方的意思)對於一個

藍橋Java/A 五題

題目:廣場舞 LQ市的市民廣場是一個多邊形,廣場上鋪滿了大理石的地板磚。 地板磚鋪得方方正正,就像座標軸紙一樣。 以某四塊磚相接的點為原點,地板磚的兩條邊為兩個正方向,一塊磚的邊長為橫縱座標的單位長度,則所有橫縱座標都為整數的點都是四塊磚的交點(如果在廣場內)。 廣場的

藍橋C++B——移動距離(曼哈頓距離)

X星球居民小區的樓房全是一樣的,並且按矩陣樣式排列。其樓房的編號為1,2,3… 當排滿一行時,從下一行相鄰的樓往反方向排號。 比如:當小區排號寬度為6時,開始情形如下: 1 2 3 4 5 6 12 11 10 9 8 7 13 14 1

藍橋JAVA B省賽題解

第一題 標題: 購物單 小明剛剛找到工作,老闆人很好,只是老闆夫人很愛購物。老闆忙的時候經常讓小明幫忙到商場代為購物。小明很厭煩,但又不好推辭。 這不,XX大促銷又來了!老闆夫人開出了長長的購物單,都是有打折優惠的。 小明也有個怪癖,不到萬不得已,從不刷卡,直接