51nod 2615 修改01矩陣 遞迴列舉

2021-09-26 09:17:02 字數 1427 閱讀 3901

有乙個n*n的01矩陣,每次操作可以選擇乙個位置改變這個位置元素的值(0變成1,1變成0),但是這個位置的上下左右四個位置的元素的狀態也會發生改變(0變成1,1變成0),問是否可以通過這個操作,將01矩陣所有元素都變成0,操作次數不限,也可以為0次。

1 1 1

1 0 1

1 1 1

在這個資料中,可以使所有元素都變成0的操作方式為:

1 1 1

1 0 1

1 1 1

1代表對這個位置的元素進行一次操作,0代表沒有進行。

輸入

第1行:乙個整數n表示矩陣的大小為n*n。(1<=n<=10)

第2~n+1行,每行n個正整數,第i行第j個正整數表示01矩陣第i行第j列位置元素的值a[i][j]。(0<=a[i][j]<=1)

輸出

如果可以通過上述操作將01矩陣的所有元素變為0,輸出"yes",否則輸出"no"。

輸入樣例

31 1 1

1 0 1

1 1 1

輸出樣例

yes只遞迴列舉第一行即可!

#include

#include

#include

#include

#include

using namespace std;

int n;

int a[12]

[12];

int dir[5]

[2]=

;int flag=0;

bool check()

}}return true;

}void

flip

(int x,

int y)}}

void

dfs(

int x,

int y)

if(x>=n||y>=n)

return

;int x1,y1;

x1=x+

(y+1

)/n;

y1=(y+1

)%n;

if(a[x-1]

[y]==1)

else

}void

firstrow

(int col)

flip(0

,col)

;firstrow

(col+1)

;flip(0

,col)

;firstrow

(col+1)

;}intmain()

}firstrow(0

);if(flag)

else

return0;

}

51nod 1137矩陣乘法 矩陣

1137 矩陣乘法 基準時間限制 1 秒 空間限制 131072 kb 分值 0 難度 基礎題 給出2個n n的矩陣m1和m2,輸出2個矩陣相乘後的結果。input 第1行 1個數n,表示矩陣的大小 2 n 100 第2 n 1行,每行n個數,對應m1的1行 0 m1 i 1000 第n 2 2n ...

51nod 1137 矩陣乘法

1137 矩陣乘法 基準時間限制 1 秒 空間限制 131072 kb 分值 0 難度 基礎題 給出2個n n的矩陣m1和m2,輸出2個矩陣相乘後的結果。input 第1行 1個數n,表示矩陣的大小 2 n 100 第2 n 1行,每行n個數,對應m1的1行 0 m1 i 1000 第n 2 2n ...

51Nod 1137 矩陣乘法

1137 矩陣乘法 基準時間限制 1 秒 空間限制 131072 kb 分值 0 難度 基礎題 收藏 關注 給出2個n n的矩陣m1和m2,輸出2個矩陣相乘後的結果。input 第1行 1個數n,表示矩陣的大小 2 n 100 第2 n 1行,每行n個數,對應m1的1行 0 m1 i 1000 第n...