簡易連連看

2021-10-10 11:41:36 字數 1623 閱讀 2473

本題要求實現乙個簡易連連看遊戲模擬程式。

給定乙個2n×2n的方陣網格遊戲盤面,每個格仔中放置一些符號。這些符號一定是成對出現的,同乙個符號可能不止一對。程式讀入玩家給出的一對位置(x​1​​ ,y​1​​ )、(x​2 ,y​2​​ ),判斷這兩個位置上的符號是否匹配。如果匹配成功,則將兩個符號消為「*」並輸出消去後的盤面;否則輸出「uh-oh」。若匹配錯誤達到3次,則輸出「game over」並結束遊戲。或者當全部符號匹配成功,則輸出「congratulations!」,然後結束遊戲。

輸入格式:

輸入在一行中給乙個正整數n(<5)。隨後2n行,每行2n個大寫英文本母(其間以1個空格分隔),表示遊戲盤面。盤面之後給出乙個正整數k,隨後k行,每行按照格式「x​1​​ y​1 x​2​​ y​2」給出乙個玩家的輸入。注意格仔的行、列編號是從1到2n。

輸出格式:

根據玩家的每一步輸入,輸出相應的結果。輸出盤面時注意,每行字元間以1個空格分隔,行末不得有多餘空格。

輸入樣例1:

2i t i t

y t i a

t a t y

i k k t111

1134

2433

1422

2123

1244

4312

1343

3144

1232

4321

122輸出樣例1:

* t * t

y t i a

t a t y

i k k t

* t * t

y t i a

t a t y

i ** t

uh-oh**

* ty * i a

t a t y

i ** t

uh-oh**

* ty * i a

* a t y

i ****

** t

** i a

* a t *

i ****

****

* i a

* a *

*i ***

****

*** a* a ***

***congratulations!

輸入樣例2:

2i t i t

y t i a

t a t y

i k k t51

1441

1231

1232

2412

233輸出樣例2:

uh-oh

* t i t

y t * a

t a t y

i k k t

uh-oh

uh-oh

game over

#include

using

namespace std;

intmain()

if(flag==0)

for(

int k=

0;k<

2*n;k++

) cout

if(cnt==3)

}return0;

}

簡易連連看

本題要求實現乙個簡易連連看遊戲模擬程式。給定乙個2的方陣網格遊戲盤面,每個格仔中放置一些符號。這些符號一定是成對出現的,同乙個符號可能不止一對。程式讀入玩家給出的一對位置 x1,y1 x2,y2 判斷這兩個位置上的符號是否匹配。如果匹配成功,則將兩個符號消為 並輸出消去後的盤面 否則輸出 uh oh...

簡易連連看

problem sets 1329402848755699712 problems 1329407074437287937 注釋掉的 是用於除錯 map的邊界是試出來的,雖然我覺得x邊15就行,但題目好像不這麼認為 str的長度隨便,他只用來刷掉第一行scanf留在緩衝區的那一行 include i...

陣列 12 簡易連連看 20

本題要求實現乙個簡易連連看遊戲模擬程式。給定乙個2nx2n的方陣網格遊戲盤面,每個格仔中放置一些符號。這些符號一定是成對出現的,同乙個符號可能不止一對。程式讀入玩家給出的一對位置 x1,y1 x2,y2 判斷這兩個位置上的符號是否匹配。如果匹配成功,則將兩個符號消為 並輸出消去後的盤面 否則輸出 u...