Re: [問題] sudoku
※ 引述《Lordaeron (Terry)》之銘言:
: ※ 引述《geo760217 (Tc)》之銘言:
: : 在寫sudoku時遇到一個問題
: : 如果需要倒回去的時候
: : 後面的數字會和需要倒回去的數字重複
: : 所以無法更新已填過的數字
: : 該怎麼解決呢?
: undo 是吧?
: 就user 每個一份, 就先留一份copy不就好了.
: 當然, 你可以想一下dancing link
undo 之後值又變成不合法的了= =
這是我的source code
真的不知道該在哪裡undo
public void fillCell(int n) {
if(n==stackSize)
{
nSolutions++;
return;
}
for(int k=1;k<=9;k++)
{
if(boardOK(stack[n][1],stack[n][2],k))
{
stack[n][0]=k;
board[stack[n][1]][stack[n][2]]=k;
fillCell(n+1);
}
}
}
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.119.140.50
※ 編輯: geo760217 來自: 140.119.140.50 (05/03 23:52)
討論串 (同標題文章)