最贊回答 / 誤盡此生
因為computerscore計算的是計算機走子時,自己連在一起時的分?jǐn)?shù),相當(dāng)于進(jìn)攻的分?jǐn)?shù);而myscore是人在走子時,形成的分?jǐn)?shù),相當(dāng)于防御的分?jǐn)?shù)。假設(shè)一下,如果計算機在走自己的第四顆子的時候分?jǐn)?shù)不高,比如2000分,而在防御人的第四顆子時分?jǐn)?shù)有5000分,那么計算機就不會去連自己的子而會去防御。而顯然這時計算機獲勝的可能性更大,因此計算機的分會大一些。如果計算機的分都小一些的話,計算機就會偏向于防守了。
2016-04-05
講師回答 / 程序員面試輔導(dǎo)
代碼本身沒有錯誤,之所以出現(xiàn)這個現(xiàn)象是因為到目前為止,白棋的落子也在onclick進(jìn)行,這里沒做特殊處理,所以白棋的落子也被統(tǒng)計在myWin這個贏法統(tǒng)計數(shù)組當(dāng)中啦。所以你看看,是不是不分黑棋白棋,只要棋子連上五顆就判斷成贏了呢?在之后,白棋不會在onclick中處理,它的落子會在computerWin中統(tǒng)計,就不會這樣啦。
2016-04-02