SDUT 1568 俄羅斯方塊

2022-04-09 20:33:51 字數 992 閱讀 9427

這個題終於ac了 tot. 判斷性的失誤啊。tle原來是先於wa的。先放這,有空總結。 

這個遊戲大家太熟悉了,應該沒有人沒玩過吧,相當有創意的乙個小遊戲,成為了人們心中的經典。

玩這個遊戲時,我們最關注的是下面已經壘起的部分,正在下降的圖形,以及下乙個要出現的圖形,目標是想方設法將一行或幾行填滿,從而可以消掉,避免壘的太高而導致遊戲結束。

今天我們想要處理的問題要簡單一些:我們用陣列表示下面已經壘起來的部分,1表示有小方塊,0表示該位置是空的。問題是,我們所面臨的可能是消掉之前的狀態,就是說可能某些行已經滿了,但是還沒有消掉。我們需要做的是把那些滿了的行消掉,同時讓上面的行落下來(注意不是某個單獨的小方塊落下來,而是上面的整行會因為下面的行被消掉而下落),最終得到穩定後的狀態(穩定的狀態即不存在還能消掉的行的狀態,見樣例)。

輸入的第一行是兩個正整數r和c (3 < r,c < 20),分別表示存放已經壘起小方塊的矩陣的行數和列數。然後是r行資料,每行c個0或1,中間沒有空格.

根據題目要求輸出消掉滿行後得到的穩定狀態,還是乙個r*c的0-1矩陣,若沒有可以消的行則原樣輸出。

6 6

000000

001100

111111

101010

111111

101011

000000

000000

000000

001100

101010

101011

view code

1 #include2 #include

3int

main()

412 l=n;

13for(i=n-1;i>=0;i--)

1426

if(l

2732}33

for(i=0;i)

3437

return0;

38 }

俄羅斯方塊高階 AI俄羅斯方塊

前文回顧 致青春 python實現俄羅斯方塊 人工智慧大火的今天,如果還是自己玩俄羅斯方塊未免顯得太low,為什麼不對遊戲公升級,讓機器自己去玩俄羅斯方塊呢?有了這個想法之後利用週六週日兩天的時間去蒐集了大量的資料,在電腦宕機好多次之後終於將ai俄羅斯方塊實現了。所謂讓機器自己去玩俄羅斯方塊,就是讓...

俄羅斯方塊

俄羅斯方塊 tetris,俄文 是一款風靡全球的電視遊戲機 和掌上遊戲機遊戲,它由俄羅斯人阿列克謝 帕基特諾夫 發明,故得此名。俄羅斯方塊的基本規則是移動 旋轉和擺放遊戲自動輸出的各種方塊,使之排列成完整的一行或多行並且消除得分。由於上手簡單 老少皆宜,從而家喻戶曉,風靡世界。俄羅斯方塊的開發者是阿...

俄羅斯方塊

include include include include includeusing namespace std include include define mem a,b memset a,b,sizeof a const int sudu 40 const int dir 4 2 cons...