SCOI2005 互不侵犯

2021-10-05 15:23:22 字數 941 閱讀 6326

互不侵犯 展開

題目描述

在n×n的棋盤裡面放k個國王,使他們互不攻擊,共有多少種擺放方案。國王能攻擊到它上下左右,以及左上左下右上右下八個方向上附近的各乙個格仔,共8個格仔。

注:資料有加強

輸入格式

只有一行,包含兩個數n,k ( 1 <=n <=9, 0 <= k <= n * n)

輸出格式

所得的方案數

輸入3 2

輸出16

一道入門級別的狀壓dp

#include

using

namespace std;

int n,k;

int cnt=0;

const

int maxn=

2005

;long

long sumking[maxn]

;long

long ez[maxn]

;//二進位制表示每一行的位置放不放king

long

long dp[12]

[maxn]

[105];

void

dfs(

int x,

int num,

int cur)

dfs(x,num,cur+1)

;//不選當前的king

dfs(x+(1

<,num+

1,cur+2)

;//選當前的king,則後乙個不能選了

}int

main()

for(

int i=

1;i<=n;i++)}

}}long

long ans=0;

for(

int i=

1;i<=cnt;i++

) cout

}

SCOI2005 互不侵犯

在n n的棋盤裡面放k個國王,使他們互不攻擊,共有多少種擺放方案。國王能攻擊到它上下左右,以及左上左下右上右下八個方向上附近的各乙個格仔,共8個格仔。只有一行,包含兩個數n,k 1 n 9,0 k n n 方案數3 2 同sgu223 include include include include ...

SCOI2005 互不侵犯

題目描述 在n n的棋盤裡面放k個國王,使他們互不攻擊,共有多少種擺放方案。國王能攻擊到它上下左右,以及左上左下右上右下八個方向上附近的各乙個格仔,共8個格仔。輸入格式 只有一行,包含兩個數n,k 1 n 9,0 k n n 輸出格式 所得的方案數 ly最可愛啦 這題。想了5分鐘,寫了10分鐘,調了...

SCOI2005 互不侵犯

在n n的棋盤裡面放k個國王,使他們互不攻擊,共有多少種擺放方案。國王能攻擊到它上下左右,以及左上左下右上右下八個方向上附近的各乙個格仔,共8個格仔。兩個數n,k 1 n 9,0 k n n 方案數。3 2果然啊 狀壓題都是乙個套路 和前面那個noi的題是乙個套路 具體實現也基本一樣 就是記錄的狀態...