簡易連連看

2021-09-05 01:16:27 字數 2081 閱讀 2345

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

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

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

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

2

i t i t

y t i a

t a t y

i k k t

111 1 1 3

4 2 4 3

3 1 4 2

2 2 1 2

3 1 2 4

4 4 3 1

2 1 3 4

3 3 1 4

4 1 2 3

2 4 3 2

1 1 2 2

* 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

* * * t

y * i a

t a t y

i * * t

uh-oh

* * * t

y * i a

* a t y

i * * *

* * * t

* * i a

* a t *

i * * *

* * * *

* * i a

* a * *

i * * *

* * * *

* * * a

* a * *

* * * *

congratulations!

哇,這個題是要多坑就有多坑!

@1: 當達到3次 「uh-oh」 時,是列印出第3次uh-oh 之後再列印 "game over" ,也就是要列印3次uh-oh,第三次uh-oh後面要連線乙個「game over」。

題目又不說清楚。

@2:當你輸入兩個座標把它們變成  *  之後,如果下一次又輸入同樣這兩個座標,那麼應該輸出uh-oh 而不是再輸一遍 * 。所以說這裡坑。

@3 我再多給一組測試資料就好理解了。

輸入樣例2:

2i t i t

y t i a

t a t y

i k k t

51 1 4 4

1 1 2 3

1 1 2 3

2 2 4 1

2 2 3 3

輸出樣例2:

uh-oh

* t i t

y t * a

t a t y

i k k t

uh-oh

uh-oh

game over

#include#include#includeusing namespace std;

char map[100][100],temp[100][100];

int main() }

cin>>t;

int sum=0,flag=1,first=0;

while (t--)}}

if (flag==1)

for (i=0;i<2*n;i++)

printf("\n");

} } else

} }return 0;

}

簡易連連看

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

簡易連連看

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

陣列 12 簡易連連看 20

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