u232 圍棋遊戲

2021-09-28 10:01:00 字數 2055 閱讀 2203

time limit: 1 second

memory limit: 128 mb

【問題描述】

為了增強幼兒園小朋友的數數能力,小虎老師給了乙個家庭遊戲作業。讓小虎那一塊空的圍棋盤,隨機在一些方格中放些棋子

(有黑白兩種顏色),如果乙個方格和它的上、下、左、右四個方格之一有相同顏色的棋子,則認為兩個格仔是相互連通的。

這期間,要求小虎不斷統計共有多少個連通塊。

如下圖是乙個5*9的一塊棋盤,其中「.「表示空格,」*「表示黑棋子,」@「表示白棋子。則有4塊連通子塊。

哥哥大虎在一邊看一邊想,如果棋盤是n*n的,共放了m個棋子,如何使用計算機解決這個問題呢?

【輸入格式】

第一行兩個整數:n,m 接下來有m行,每行三個整數:c x y(0<=c<=1,1<=x,y<=n)。分別表示依次放入棋子的顏色(0表示白色,1表示黑色)、要放入格仔的橫座標和格仔的縱座標。

【輸出格式】

共m行。第i行乙個整數,表示放入第i個棋子後,當前有多少個棋子連通塊。

【資料規模】

30%資料:1<=n<=10 60%資料:1<=n<=100 100%資料:1<=m<=n*n。n<=500。

sample input1

3 5

1 1 1

1 1 2

0 2 2

1 3 1

1 2 1

sample output1

1 1

2 3

2sample input2

3 5

1 1 2

1 2 1

1 3 2

1 2 3

1 2 2

sample output2

1 2

3 4

1【題目鏈結】:

【題意】

中文題

【題解】

每次放下棋子之後,連通塊遞增1;

看看放下去的棋子所在的位置的四周有沒有和它的顏色相同的棋子;

如果有的話,用並查集的找爸爸函式看看它們倆是不是連在一起的,如果不是連在一起的則把它們連在一起;

然後連通塊遞減1;

然後輸出答案就好;

(x,y)座標可以一一對應乙個線性的數字->(x-1)*n+y;

【完整**】

#include 

#include

#include

#include

using

namespace

std;

#define lson l,m,rt<<1

#define rson m+1,r,rt<<1|1

#define ll long long

#define rep1(i,a,b) for (int i = a;i <= b;i++)

#define rep2(i,a,b) for (int i = a;i >= b;i--)

#define mp make_pair

#define pb push_back

#define fi first

#define se second

#define rei(x) scanf("%d",&x)

#define rel(x) scanf("%i64d",&x)

typedef pair pii;

typedef pairpll;

const

int dx[9] = ;

const

int dy[9] = ;

const

double pi = acos(-1.0);

const

int maxn = 510;

int n,m,a[maxn][maxn],cnt = 0;

int f[maxn*maxn];

int change(int x,int y)

int ff(int x)

int main()}}

printf("%d\n",cnt);

}return

0;}

硬幣遊戲 Project Euler 232

原帖 project euler 上最近的題目都還比較意思,來看看前些天剛剛新鮮出爐的一道題 problem232 大意如此 說,有這樣乙個硬幣遊戲,需要兩個玩家參與,我們不防分別將他們稱為玩家 1和玩家 2。遊戲規則如下 兩個玩家輪流來擲硬幣。玩家 1每次只能擲一次,若是正面向上,則得 1分,否則...

深度學習與圍棋遊戲 筆記 1

最近,搞到一本書 deep learning and the game of go 歐美書商好像有種習慣,科技方面尤其程式設計相關的電子書,銷售一段時間後會公開放到網上,供人免費下載。這本書就來源於此。估計,有社會資本支援書商的善舉。希望國內資本雄厚的企業,向西方學習,鼓勵支援國內書商也這樣做。第1...

深度學習與圍棋遊戲 筆記 2

教機器學習的內容 布局模型庫。由高手布局棋譜中的高頻率走步構成。建立棋局狀態搜尋樹。儘量減少備選的下一步棋。估算每步棋的價值。衡量機械人的棋力 傳統的日本級段制。與機械人或者人模擬賽測定。包括以下內容 建立目錄 dlgo,其下建 3 個檔案 檔案 init py內容為空。在模組 gotype.py ...