NOIP2009 靶形數獨

2021-07-11 17:49:58 字數 1330 閱讀 3541

爆搜沒什麼好說的。。。

剪枝思路:

一開始將每個點可能取的值的數量統計出,排序,從小到大搜

然後貪心可行性(就是剩下的地方都填9,得分10)

不過在vj上測85。。。日。。加了卡時,2e7次之內跳出,總算過了。。。

#include#include#include#include#include#include#include#includeusing namespace std;

const int maxn = 10;

const int dx[8] = ;

const int dy[8] = ;

int ans,cnt,sc[maxn][maxn],p[maxn][maxn],a[maxn][maxn][maxn],tot[maxn][maxn];

int sbvijos = 0;

struct p

}b[maxn*maxn];

queue q;

void modify(int x,int y,int now,int add)

void dfs(int now,int sum)

int x = b[now].x,y = b[now].y;

for (int i = 1; i <= 9; i++)

if (!a[x][y][i])

}int main()

); while (!q.empty()) );

} }for (int i = 1; i <= 9; i++)

for (int j = 1; j <= 9; j++)

for (int i = 1; i <= 9; i++)

for (int j = 1; j <= 9; j++)

if (!p[i][j]) ;

for (int l = 1; l <= 9; l++)

if (!a[i][j][l]) ++tot[i][j];

}int orz = ans;

sort(b,b + cnt);

dfs(0,ans);

if (ans > orz) cout << ans;

else cout << -1;

return 0;

}

NOIP 2009 靶形數獨

題目描述 小城和小華都是熱愛數學的好學生,最近,他們不約而同地迷上了數獨遊戲,好勝的他們想用數獨來一比高低。但普通的數獨對他們來說都過於簡單了,於是他們向 z 博士請教,z 博士拿出了他最近發明的 靶形數獨 作為這兩個孩子比試的題目。靶形數獨的方格同普通數獨一樣,在 9 格寬 9 格高的大九宮格中有...

noip2009 靶形數獨

靶形數獨 小城和小華都是熱愛數學的好學生,最近,他們不約而同地迷上了數獨遊戲,好勝的他 們想用數獨來一比高低。但普通的數獨對他們來說都過於簡單了,於是他們向 z 博士請教,z 博士拿出了他最近發明的 靶形數獨 作為這兩個孩子比試的題目。靶形數獨的方格同普通數獨一樣,在 9 格寬 9 格高的大九宮格中...

靶形數獨 NOIP2009

小城和小華都是熱愛數學的好學生,最近,他們不約而同地迷上了數獨遊戲,好勝的他們想用數獨來一比高低。但普通的數獨對他們來說都過於簡單了,於是他們向 z 博士請教,z 博士拿出了他最近發明的 靶形數獨 作為這兩個孩子比試的題目。靶形數獨的方格同普通數獨一樣,在 9 格寬 9 格高的大九宮格中有9 個 3...