NOIP2009 靶形數獨

2022-05-02 02:21:06 字數 918 閱讀 4821

傳送門

luogu

這題其實挺簡單的。

首先要熟悉數獨,我們應該要優先搜尋限制條件多的行,也就是可能方案少的行,顯然這樣可以剪枝,然後再發揮一下dfs的基本功就可以了。

#include #include #include #include #include #include #include #include #define rg register

using namespace std;

template < typename t > inline void read(t& s)

const int s[10][10] = ,

, ,, ,

, ,, , };

const int p[10][10] = ,

, ,, ,

, ,, ,

, };

struct node a[10];

inline bool cmp(const node& x, const node& y)

int ans = -1, mp[10][10]; bool line[10][10], clmn[10][10], palc[10][10];

inline void dfs(int i, int j, int line, int sum)

if (j == 10)

if (mp[i][j])

for (rg int x = 1; x <= 9; ++x)

}int main()

sort(a + 1, a + 10, cmp);

dfs(a[1].id, 1, 0, tmp);

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

return 0;

}

完結撒花\(qwq\)

NOIP2009 靶形數獨

爆搜沒什麼好說的。剪枝思路 一開始將每個點可能取的值的數量統計出,排序,從小到大搜 然後貪心可行性 就是剩下的地方都填9,得分10 不過在vj上測85。日。加了卡時,2e7次之內跳出,總算過了。include include include include include include inclu...

NOIP 2009 靶形數獨

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

noip2009 靶形數獨

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