SCOI2005 互不侵犯

2021-07-26 08:22:56 字數 1004 閱讀 9557

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

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

方案數3 2

同sgu223

#include

#include

#include

#include

#include

#include

#include

#include

#include

using

namespace

std;

inline

const

int get_int()

while(x>='0'&&x<='9')

return num*bj;

}long

long cnt=0,ans=0,f[15][1105][205];

int n,king,state[1105],king[1105];

bool check(int a,int b)

int main()

f[0][1][0]=1; //初始條件:第0行全為0

for(int i=1; i<=n; i++) //階段:行

for(int j=1; j<=cnt; j++) //列舉狀態

for(int k=0; k<=king; k++) //列舉國王數

if(k>=king[j])

for(int t=1; t<=cnt; t++) //列舉i-1行狀態

if(check(j,t))f[i][j][k]+=f[i-1][t][k-king[j]];

for(int i=1; i<=cnt; i++)ans+=f[n][i][king];

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

return

0;}

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的題是乙個套路 具體實現也基本一樣 就是記錄的狀態...

SCOI2005 互不侵犯

互不侵犯 展開 題目描述 在n n的棋盤裡面放k個國王,使他們互不攻擊,共有多少種擺放方案。國王能攻擊到它上下左右,以及左上左下右上右下八個方向上附近的各乙個格仔,共8個格仔。注 資料有加強 輸入格式 只有一行,包含兩個數n,k 1 n 9,0 k n n 輸出格式 所得的方案數 輸入3 2 輸出1...