POJ 1321 棋盤問題

2021-07-09 14:12:55 字數 479 閱讀 2866

題面已知棋盤為n x n 的矩陣,也已知棋子數量k , 則問不在同一行,一列擺放棋子有多少種可能;

2016.3.19 第三次寫這個題,感觸良多,寫的特別快;就是在dfs中應該是i+1,寫成hang+1了;忘了變換的是i了;

ac**如下:

#include using namespace std ;

int n , k , vis[15],ans ;

char mat[15][15];

void dfs(int hang,int sum)

for(int i = hang ; i>n>>k&&n!=-1&&k!=-1)

}memset(vis,0,sizeof(vis));

ans = 0 ;

dfs(0,0);//*從0行,目前已經放置0棋子開始放*//

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

}}

還年輕啊,唉

POJ 1321 棋盤問題

time limit 1000ms memory limit 10000k total submissions 7007 accepted 3390 description 在乙個給定形狀的棋盤 形狀可能是不規則的 上面擺放棋子,棋子沒有區別。要求擺放時任意的兩個棋子不能放在棋盤中的同一行或者同一列...

poj 1321 棋盤問題

棋盤問題 time limit 1000ms memory limit 10000k total submissions 15365 accepted 7600 description 在乙個給定形狀的棋盤 形狀可能是不規則的 上面擺放棋子,棋子沒有區別。要求擺放時任意的兩個棋子不能放在棋盤中的同一...

POJ 1321 棋盤問題

找到第乙個有 的行開始回溯就可以了 include include using namespace std const int maxn 9 char board maxn maxn bool c maxn int ans,n,k void backtracking int curi,int cnt...