亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? group__search.html

?? 黑白棋終局解算程序
?? HTML
?? 第 1 頁 / 共 5 頁
字號:
<p>Get the final score, when 2 empty squares remain. <dl compact><dt><b>Parameters:</b></dt><dd>  <table border="0" cellspacing="2" cellpadding="0">    <tr><td valign=top><em>board</em>&nbsp;</td><td>the board to evaluate. </td></tr>    <tr><td valign=top><em>alpha</em>&nbsp;</td><td>upper score value. </td></tr>    <tr><td valign=top><em>beta</em>&nbsp;</td><td>lower score value. </td></tr>    <tr><td valign=top><em>passed</em>&nbsp;</td><td>a flag indicating if previous move was a pass. </td></tr>  </table></dl><dl compact><dt><b>Returns:</b></dt><dd>the final score, as a disc difference. </dd></dl><p><div class="fragment"><pre>01745 {01746     <span class="keyword">const</span> <span class="keywordtype">char</span> p = board-&gt;<a class="code" href="structBoard.html#o1">player</a>;01747     <span class="keyword">const</span> <span class="keywordtype">char</span> o = <a class="code" href="group__mac.html#ga50">OPPONENT</a>(p);01748     <a class="code" href="structSquareList.html">SquareList</a> *empties = board-&gt;<a class="code" href="structBoard.html#o7">empties</a>-&gt;<a class="code" href="structSquareList.html#o2">next</a>;01749     <span class="keywordtype">int</span> x1 = empties-&gt;<a class="code" href="structSquareList.html#o0">position</a>;01750     <span class="keywordtype">int</span> x2 = empties-&gt;<a class="code" href="structSquareList.html#o2">next</a>-&gt;<a class="code" href="structSquareList.html#o0">position</a>;01751     <span class="keywordtype">int</span> score, bestscore, n1_flips, n2_flips, diff_discs;01752     <a class="code" href="structMove.html">Move</a> move;01753 01754     diff_discs = board-&gt;<a class="code" href="structBoard.html#o2">n_discs</a>[(<span class="keywordtype">int</span>)p] - board-&gt;<a class="code" href="structBoard.html#o2">n_discs</a>[(<span class="keywordtype">int</span>)o];01755     bestscore = -<a class="code" href="group__mac.html#ga21">INF_SCORE</a>;01756 01757     <span class="comment">/* try to play on the first available square */</span>01758     <span class="keywordflow">if</span> ((n1_flips = <a class="code" href="group__board.html#ga3">board_do_flip</a>(board, x1, &amp;move)) &gt; 0) {01759         <span class="keywordflow">if</span> ((n2_flips = <a class="code" href="group__board.html#ga2">board_count_flips</a>(board, x2, o)) &gt; 0) {01760             bestscore = diff_discs + 2 * (n1_flips - n2_flips);01761             <a class="code" href="group__mac.html#ga27">BOARD_UPDATE_TERMINAL_NODES</a>();01762         } <span class="keywordflow">else</span> <span class="keywordflow">if</span> ((n2_flips = <a class="code" href="group__board.html#ga2">board_count_flips</a>(board, x2, p)) &gt; 0) {01763             bestscore = diff_discs + 2 * (n1_flips + n2_flips) + 2;01764             <a class="code" href="group__mac.html#ga27">BOARD_UPDATE_TERMINAL_NODES</a>();01765         } <span class="keywordflow">else</span> {01766             bestscore = diff_discs + 2 * n1_flips + 1;01767             <span class="keywordflow">if</span> (bestscore &gt; 0) bestscore++;01768             <span class="keywordflow">else</span> <span class="keywordflow">if</span> (bestscore &lt; 0) bestscore--;01769         }01770         <a class="code" href="group__mac.html#ga37">BOARD_RESTORE_SQUARE</a>(board, &amp;move);01771         <a class="code" href="group__mac.html#ga39">BOARD_RESTORE_PLAYER</a>(board);01772     }01773     <span class="comment">/* if needed, try to play on the second &amp; last available square */</span>01774     <span class="keywordflow">if</span> (bestscore &lt; beta &amp;&amp; (n1_flips = board_do_flip(board, x2, &amp;move)) &gt; 0) {01775         <span class="keywordflow">if</span> ((n2_flips = <a class="code" href="group__board.html#ga2">board_count_flips</a>(board, x1, o)) &gt; 0) {01776             score = diff_discs + 2 * (n1_flips - n2_flips);01777             <a class="code" href="group__mac.html#ga27">BOARD_UPDATE_TERMINAL_NODES</a>();01778         } <span class="keywordflow">else</span> <span class="keywordflow">if</span> ((n2_flips = <a class="code" href="group__board.html#ga2">board_count_flips</a>(board, x1, p)) &gt; 0) {01779             score = diff_discs + 2 * (n1_flips + n2_flips) + 2;01780             <a class="code" href="group__mac.html#ga27">BOARD_UPDATE_TERMINAL_NODES</a>();01781         } <span class="keywordflow">else</span> {01782             score = diff_discs + 2 * n1_flips + 1;01783             <span class="keywordflow">if</span> (score &gt; 0) score++;01784             <span class="keywordflow">else</span> <span class="keywordflow">if</span> (score &lt; 0) score--;01785         }01786         <a class="code" href="group__mac.html#ga37">BOARD_RESTORE_SQUARE</a>(board, &amp;move);01787         <a class="code" href="group__mac.html#ga39">BOARD_RESTORE_PLAYER</a>(board);01788         <span class="keywordflow">if</span> (score &gt; bestscore) bestscore = score;01789     }01790     <span class="comment">/* if no move were available */</span>01791     <span class="keywordflow">if</span> (bestscore == -<a class="code" href="group__mac.html#ga21">INF_SCORE</a>) {01792         <span class="keywordflow">if</span> (passed) { <span class="comment">/* game is over */</span>01793             <a class="code" href="group__mac.html#ga28">BOARD_CORRECT_TERMINAL_NODES</a>();01794             bestscore = diff_discs;01795             <span class="keywordflow">if</span> (bestscore &gt; 0) bestscore += 2;01796             <span class="keywordflow">else</span> <span class="keywordflow">if</span> (bestscore &lt; 0) bestscore -= 2;01797         } <span class="keywordflow">else</span> { <span class="comment">/* pass... */</span>01798             <a class="code" href="group__mac.html#ga38">BOARD_UPDATE_PLAYER</a>(board);01799             <a class="code" href="group__mac.html#ga26">BOARD_UPDATE_INTERNAL_NODES</a>();01800             bestscore = -<a class="code" href="group__search.html#ga3">board_get_final_score_2</a>(board, -beta, -alpha, 1);01801             <a class="code" href="group__mac.html#ga39">BOARD_RESTORE_PLAYER</a>(board);01802         }01803     }01804 01805     <span class="keywordflow">return</span> bestscore;01806 }</pre></div>    </td>  </tr></table><a class="anchor" name="ga5" doxytag="solver.c::PVS_deep" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0">  <tr>    <td class="mdRow">      <table cellpadding="0" cellspacing="0" border="0">        <tr>          <td class="md" nowrap valign="top"> int PVS_deep </td>          <td class="md" valign="top">(&nbsp;</td>          <td class="md" nowrap valign="top"><a class="el" href="structBoard.html">Board</a> *&nbsp;</td>          <td class="mdname" nowrap> <em>board</em>, </td>        </tr>        <tr>          <td></td>          <td></td>          <td class="md" nowrap><a class="el" href="structHashTable.html">HashTable</a> *&nbsp;</td>          <td class="mdname" nowrap> <em>hash_table</em>, </td>        </tr>        <tr>          <td></td>          <td></td>          <td class="md" nowrap>int&nbsp;</td>          <td class="mdname" nowrap> <em>alpha</em>, </td>        </tr>        <tr>          <td></td>          <td></td>          <td class="md" nowrap>int&nbsp;</td>          <td class="mdname" nowrap> <em>beta</em>, </td>        </tr>        <tr>          <td></td>          <td></td>          <td class="md" nowrap>int&nbsp;</td>          <td class="mdname" nowrap> <em>passed</em></td>        </tr>        <tr>          <td></td>          <td class="md">)&nbsp;</td>          <td class="md" colspan="2"></td>        </tr>      </table>    </td>  </tr></table><table cellspacing=5 cellpadding=0 border=0>  <tr>    <td>      &nbsp;    </td>    <td><p>Evaluate a position with a deep Principal Variation Search algorithm. <p>This function is used when there are still many empty squares on the board. <a class="el" href="structMove.html">Move</a> ordering, hash table cutoff, enhanced transposition cutoff, etc. are used in order to diminish the size of the tree to analyse, but at the expense of a slower speed.<p><dl compact><dt><b>Parameters:</b></dt><dd>  <table border="0" cellspacing="2" cellpadding="0">    <tr><td valign=top><em>board</em>&nbsp;</td><td>board. </td></tr>    <tr><td valign=top><em>hash_table</em>&nbsp;</td><td>hash_table. </td></tr>    <tr><td valign=top><em>alpha</em>&nbsp;</td><td>lower bound. </td></tr>    <tr><td valign=top><em>beta</em>&nbsp;</td><td>upper bound. </td></tr>    <tr><td valign=top><em>passed</em>&nbsp;</td><td>a flag indicating if previous move was a pass. </td></tr>  </table></dl><dl compact><dt><b>Returns:</b></dt><dd>the final score, as a disc difference. </dd></dl><p><div class="fragment"><pre>01897 {01898     <span class="keywordtype">int</span> score, bestscore, lower, upper, bestmove;01899     <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> hash_lock, hash_index;01900     <a class="code" href="structMoveList.html">MoveList</a> movelist[<a class="code" href="group__mac.html#ga23">MAX_MOVE</a> + 2], *iter;01901     <a class="code" href="structMove.html">Move</a> *move;01902     <a class="code" href="structHash.html">Hash</a> *hash;01903     <a class="code" href="structHashEntry.html">HashEntry</a> *hash_entry;01904 01905     bestmove = <a class="code" href="group__mac.html#gga56a56">NOMOVE</a>;01906     lower = alpha;01907     upper = beta;01908     <span class="comment">/* transposition cutoff ? */</span>01909 <span class="preprocessor">#if USE_HASH_TABLE</span>01910 <span class="preprocessor"></span>    hash = <a class="code" href="group__hash.html#ga5">hash_get</a>(hash_table, board);01911     <span class="keywordflow">if</span> (hash != NULL) {01912         <span class="keywordflow">if</span> (upper &gt; hash-&gt;<a class="code" href="structHash.html#o2">upper</a>) {01913             upper = hash-&gt;<a class="code" href="structHash.html#o2">upper</a>;01914             <span class="keywordflow">if</span> (upper &lt;= lower) <span class="keywordflow">return</span> upper;01915         }01916         <span class="keywordflow">if</span> (lower &lt; hash-&gt;<a class="code" href="structHash.html#o1">lower</a>) {01917             lower = hash-&gt;<a class="code" href="structHash.html#o1">lower</a>;01918             <span class="keywordflow">if</span> (lower &gt;= upper) <span class="keywordflow">return</span> lower;01919         }01920         bestmove = hash-&gt;<a class="code" href="structHash.html#o3">move</a>;01921     }01922 <span class="preprocessor">#endif</span>01923 <span class="preprocessor"></span>    <a class="code" href="group__board.html#ga9">board_get_movelist</a>(board, movelist);01924     <span class="keywordflow">if</span> (movelist-&gt;<a class="code" href="structMoveList.html#o1">next</a> == NULL) {01925         <span class="keywordflow">if</span> (passed) {01926             <a class="code" href="group__mac.html#ga28">BOARD_CORRECT_TERMINAL_NODES</a>();01927             alpha = -(beta = +<a class="code" href="group__mac.html#ga21">INF_SCORE</a>);01928             bestscore = <a class="code" href="group__search.html#ga0">board_get_final_score</a>(board);01929             bestmove = <a class="code" href="group__mac.html#gga56a56">NOMOVE</a>;01930         } <span class="keywordflow">else</span> {01931             <a class="code" href="group__board.html#ga7">board_update_pass</a>(board);01932             bestscore = -<a class="code" href="group__search.html#ga5">PVS_deep</a>(board, hash_table, -upper, -lower, 1);01933             bestmove = <a class="code" href="group__mac.html#gga56a57">PASS</a>;01934             <a class="code" href="group__board.html#ga8">board_restore_pass</a>(board);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩成人一区二区三区在线观看| 丁香五精品蜜臀久久久久99网站| av不卡免费电影| 国产精品情趣视频| 一本久道中文字幕精品亚洲嫩 | 欧美一级夜夜爽| 中文字幕欧美三区| 成人午夜伦理影院| 亚洲免费三区一区二区| 欧美www视频| 国产精品一区在线观看你懂的| 26uuu亚洲| 99re66热这里只有精品3直播| 亚洲美女电影在线| 欧美另类一区二区三区| 精品亚洲成a人在线观看| 国产亚洲一区二区三区| 成人免费视频视频在线观看免费| 亚洲人一二三区| 欧美日韩国产三级| 国产综合色产在线精品| 国产精品动漫网站| 欧美日韩国产美女| 国产激情一区二区三区桃花岛亚洲| 国产精品国产三级国产aⅴ中文 | 波多野结衣一区二区三区| 中文字幕一区二区三区精华液| 99久久99久久久精品齐齐| 亚洲国产视频一区| 日韩精品在线一区二区| 9i看片成人免费高清| 日韩综合在线视频| 中文字幕日韩一区| 日韩三级精品电影久久久 | 91成人网在线| 韩国成人福利片在线播放| 亚洲日本中文字幕区| 欧美一区二区三级| 91丨国产丨九色丨pron| 日本aⅴ亚洲精品中文乱码| 国产精品久久久久影院老司| 欧美日韩五月天| 99视频有精品| 乱一区二区av| 亚洲妇女屁股眼交7| 欧美极品另类videosde| 欧美一区二区福利在线| 色婷婷国产精品| 国产成人精品三级| 免费观看一级欧美片| 亚洲精品免费看| 国产精品人人做人人爽人人添| 91精品国产欧美一区二区| 91在线视频网址| 精品亚洲成a人在线观看| 亚洲r级在线视频| 亚洲欧美日韩国产另类专区| 久久久夜色精品亚洲| 日韩免费视频线观看| 欧美区一区二区三区| 日本韩国视频一区二区| k8久久久一区二区三区| 国产精品一区二区x88av| 蜜臀精品一区二区三区在线观看| 亚洲国产一区在线观看| 亚洲免费资源在线播放| 一区视频在线播放| 国产精品久久久久一区二区三区共 | 精品国产网站在线观看| 91精品国产丝袜白色高跟鞋| 欧美日韩欧美一区二区| 在线影院国内精品| 欧美在线影院一区二区| 欧洲精品一区二区| 色婷婷亚洲精品| 色94色欧美sute亚洲线路二| 99国产精品久| 91丝袜美腿高跟国产极品老师| 99久久综合国产精品| 成人精品一区二区三区中文字幕| 丁香另类激情小说| 成人18视频日本| 97精品国产露脸对白| 91网上在线视频| 欧美主播一区二区三区| 欧美三日本三级三级在线播放| 精品视频1区2区3区| 欧美丰满一区二区免费视频 | 青青草原综合久久大伊人精品| 丝袜国产日韩另类美女| 日韩av电影天堂| 久久精品国产第一区二区三区| 日本伊人午夜精品| 精品一区二区三区在线播放 | 亚洲欧美国产毛片在线| 亚洲午夜羞羞片| 免费成人深夜小野草| 激情综合色丁香一区二区| 国产美女娇喘av呻吟久久| 豆国产96在线|亚洲| 91在线国产福利| 欧美三级资源在线| 日韩精品中午字幕| 国产亲近乱来精品视频| 亚洲欧美电影院| 男女激情视频一区| 国产很黄免费观看久久| 在线视频国内一区二区| 欧美一级夜夜爽| 国产情人综合久久777777| 亚洲人成小说网站色在线| 水蜜桃久久夜色精品一区的特点| 久久99精品视频| 91在线视频免费91| 日韩欧美国产午夜精品| 国产精品久久久久久福利一牛影视| 亚洲综合精品久久| 久草这里只有精品视频| 91免费观看在线| 日韩免费电影网站| 亚洲乱码中文字幕综合| 久久不见久久见中文字幕免费| jizzjizzjizz欧美| 欧美成va人片在线观看| 成人免费小视频| 伦理电影国产精品| 91成人在线免费观看| 国产亚洲欧美在线| 视频一区视频二区中文字幕| 国产成人免费在线观看不卡| 欧美日韩一区二区三区在线| 久久久天堂av| 日韩电影在线观看电影| 91麻豆免费观看| 久久精品视频在线看| 午夜精品久久久久久久久| 成人性视频免费网站| 欧美一级高清片| 亚洲综合在线五月| 国产成人精品午夜视频免费| 777亚洲妇女| 一区二区三区.www| 粉嫩一区二区三区在线看| 欧美tk—视频vk| 午夜在线成人av| 91日韩一区二区三区| 国产视频在线观看一区二区三区| 日韩一区欧美二区| 在线观看精品一区| 中文字幕色av一区二区三区| 国产成人精品一区二区三区网站观看| 这里只有精品99re| 亚洲成人av在线电影| 色综合色狠狠综合色| 国产精品久久久久影院色老大 | 欧美成人性福生活免费看| 亚洲国产sm捆绑调教视频| 99在线视频精品| 亚洲国产电影在线观看| 国产成人免费在线| 久久久99久久精品欧美| 激情综合色丁香一区二区| 欧美一区二区大片| 视频精品一区二区| 欧美精品在线一区二区三区| 亚洲国产一二三| 欧美日韩高清一区二区不卡| 亚洲综合色区另类av| 日本道精品一区二区三区| 一区二区三区成人| 在线看国产日韩| 亚洲国产欧美在线人成| 色婷婷av一区| 亚洲午夜电影网| 欧美美女bb生活片| 日韩国产欧美在线观看| 日韩一区二区三区高清免费看看| 日韩在线a电影| 精品久久人人做人人爱| 国产一区二区三区在线观看免费视频 | 欧美在线免费观看亚洲| 天天色综合成人网| 日韩精品中文字幕一区| 国产jizzjizz一区二区| 国产精品不卡在线| 欧美综合色免费| 美女视频一区二区三区| 久久免费视频色| 波多野结衣中文字幕一区二区三区 | 午夜精品视频在线观看| 日韩精品一区二区三区中文不卡 | 成人激情视频网站| 国产精品夫妻自拍| 欧美午夜精品一区二区三区| 亚洲一区二区三区四区五区中文 | zzijzzij亚洲日本少妇熟睡| 亚洲一区二区中文在线| 欧美日韩视频一区二区| 日本免费在线视频不卡一不卡二| 日韩一卡二卡三卡四卡|