⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 group__mac.html

📁 黑白棋终局解算程序
💻 HTML
📖 第 1 页 / 共 5 页
字号:
          <td class="md" nowrap valign="top">board,         <tr>          <td></td>          <td></td>          <td class="md" nowrap>x&nbsp;</td>          <td class="mdname1" valign="top" nowrap>          </td>          <td class="md" valign="top">&nbsp;)&nbsp;</td>          <td class="md" nowrap>&nbsp;&nbsp;&nbsp;(board-&gt;parity[<a class="el" href="group__mac.html#ga1">QUADRANT_ID</a>[x]] ^= 1)      </table>    </td>  </tr></table><table cellspacing=5 cellpadding=0 border=0>  <tr>    <td>      &nbsp;    </td>    <td><p>macro to update parity     </td>  </tr></table><a class="anchor" name="ga38" doxytag="solver.c::BOARD_UPDATE_PLAYER" ></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"> #define BOARD_UPDATE_PLAYER</td>          <td class="md" valign="top">(&nbsp;</td>          <td class="md" nowrap valign="top">board&nbsp;</td>          <td class="mdname1" valign="top" nowrap>          </td>          <td class="md" valign="top">&nbsp;)&nbsp;</td>          <td class="md" nowrap>&nbsp;&nbsp;&nbsp;(board-&gt;player = o)      </table>    </td>  </tr></table><table cellspacing=5 cellpadding=0 border=0>  <tr>    <td>      &nbsp;    </td>    <td><p>macro to update player     </td>  </tr></table><a class="anchor" name="ga36" doxytag="solver.c::BOARD_UPDATE_SQUARE" ></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"> #define BOARD_UPDATE_SQUARE</td>          <td class="md" valign="top">(&nbsp;</td>          <td class="md" nowrap valign="top">board,         <tr>          <td></td>          <td></td>          <td class="md" nowrap>move&nbsp;</td>          <td class="mdname1" valign="top" nowrap>          </td>          <td class="md" valign="top">&nbsp;)&nbsp;</td>          <td class="md" nowrap>      </table>    </td>  </tr></table><table cellspacing=5 cellpadding=0 border=0>  <tr>    <td>      &nbsp;    </td>    <td><p><b>Value:</b><div class="fragment"><pre><span class="keywordflow">switch</span>((move)-&gt;n) {  \    <span class="keywordflow">case</span> 18: board-&gt;square[(move)-&gt;position[18]] = p;  \    <span class="keywordflow">case</span> 17: board-&gt;square[(move)-&gt;position[17]] = p;  \    <span class="keywordflow">case</span> 16: board-&gt;square[(move)-&gt;position[16]] = p;  \    <span class="keywordflow">case</span> 15: board-&gt;square[(move)-&gt;position[15]] = p;  \    <span class="keywordflow">case</span> 14: board-&gt;square[(move)-&gt;position[14]] = p;  \    <span class="keywordflow">case</span> 13: board-&gt;square[(move)-&gt;position[13]] = p;  \    <span class="keywordflow">case</span> 12: board-&gt;square[(move)-&gt;position[12]] = p;  \    <span class="keywordflow">case</span> 11: board-&gt;square[(move)-&gt;position[11]] = p;  \    <span class="keywordflow">case</span> 10: board-&gt;square[(move)-&gt;position[10]] = p;  \    <span class="keywordflow">case</span>  9: board-&gt;square[(move)-&gt;position[ 9]] = p;  \    <span class="keywordflow">case</span>  8: board-&gt;square[(move)-&gt;position[ 8]] = p;  \    <span class="keywordflow">case</span>  7: board-&gt;square[(move)-&gt;position[ 7]] = p;  \    <span class="keywordflow">case</span>  6: board-&gt;square[(move)-&gt;position[ 6]] = p;  \    <span class="keywordflow">case</span>  5: board-&gt;square[(move)-&gt;position[ 5]] = p;  \    <span class="keywordflow">case</span>  4: board-&gt;square[(move)-&gt;position[ 4]] = p;  \    <span class="keywordflow">case</span>  3: board-&gt;square[(move)-&gt;position[ 3]] = p;  \    <span class="keywordflow">case</span>  2: board-&gt;square[(move)-&gt;position[ 2]] = p;  \    <span class="keywordflow">case</span>  1: board-&gt;square[(move)-&gt;position[ 1]] = p;  \    <span class="keywordflow">case</span>  0: board-&gt;square[(move)-&gt;position[ 0]] = p;  \}</pre></div>update board     </td>  </tr></table><a class="anchor" name="ga27" doxytag="solver.c::BOARD_UPDATE_TERMINAL_NODES" ></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"> #define BOARD_UPDATE_TERMINAL_NODES</td>          <td class="md" valign="top">(&nbsp;</td>&nbsp;</td>          <td class="mdname1" valign="top" nowrap>          </td>          <td class="md" valign="top">&nbsp;)&nbsp;</td>          <td class="md" nowrap>&nbsp;&nbsp;&nbsp;board-&gt;n_nodes++;      </table>    </td>  </tr></table><table cellspacing=5 cellpadding=0 border=0>  <tr>    <td>      &nbsp;    </td>    <td><p>node counter for terminal nodes (leaves)     </td>  </tr></table><a class="anchor" name="ga20" doxytag="solver.c::COUNT_NODES" ></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"> #define COUNT_NODES&nbsp;&nbsp;&nbsp;3      </table>    </td>  </tr></table><table cellspacing=5 cellpadding=0 border=0>  <tr>    <td>      &nbsp;    </td>    <td><p>node counter 0 = off. 1 = internal_nodes, 2 = internal_nodes + leave_nodes, 3 = all. (default = 3, more spectacular!)     </td>  </tr></table><a class="anchor" name="ga12" doxytag="solver.c::EMPTIES_DEEP_TO_SHALLOW_SEARCH" ></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"> #define EMPTIES_DEEP_TO_SHALLOW_SEARCH&nbsp;&nbsp;&nbsp;7      </table>    </td>  </tr></table><table cellspacing=5 cellpadding=0 border=0>  <tr>    <td>      &nbsp;    </td>    <td><p>depth switch from a slow but efficient PVS near the root to a fast PVS near the leaves. (default = 7)     </td>  </tr></table><a class="anchor" name="ga51" doxytag="solver.c::HASH_TABLE_OK" ></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"> #define HASH_TABLE_OK</td>          <td class="md" valign="top">(&nbsp;</td>          <td class="md" nowrap valign="top">hash_table&nbsp;</td>          <td class="mdname1" valign="top" nowrap>          </td>          <td class="md" valign="top">&nbsp;)&nbsp;</td>          <td class="md" nowrap>&nbsp;&nbsp;&nbsp;(hash_table-&gt;hash_mask != 0)      </table>    </td>  </tr></table><table cellspacing=5 cellpadding=0 border=0>  <tr>    <td>      &nbsp;    </td>    <td><p>test if hash table exists     </td>  </tr></table><a class="anchor" name="ga21" doxytag="solver.c::INF_SCORE" ></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"> #define INF_SCORE&nbsp;&nbsp;&nbsp;127      </table>    </td>  </tr></table><table cellspacing=5 cellpadding=0 border=0>  <tr>    <td>      &nbsp;    </td>    <td><p>infinite score: a huge value unreachable as a score and fitting in a char     </td>  </tr></table><a class="anchor" name="ga24" doxytag="solver.c::MAX_FLIP" ></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"> #define MAX_FLIP&nbsp;&nbsp;&nbsp;20      </table>    </td>  </tr></table><table cellspacing=5 cellpadding=0 border=0>  <tr>    <td>      &nbsp;    </td>    <td><p>maximal number of squares flipped + 1     </td>  </tr></table><a class="anchor" name="ga23" doxytag="solver.c::MAX_MOVE" ></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"> #define MAX_MOVE&nbsp;&nbsp;&nbsp;32      </table>    </td>  </tr></table><table cellspacing=5 cellpadding=0 border=0>  <tr>    <td>      &nbsp;    </td>    <td><p>maximal number of moves     </td>  </tr></table><a class="anchor" name="ga25" doxytag="solver.c::MAX_SCORE" ></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"> #define MAX_SCORE&nbsp;&nbsp;&nbsp;64      </table>    </td>  </tr></table><table cellspacing=5 cellpadding=0 border=0>  <tr>    <td>      &nbsp;    </td>    <td><p>maximal score     </td>  </tr></table><a class="anchor" name="ga50" doxytag="solver.c::OPPONENT" ></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"> #define OPPONENT</td>          <td class="md" valign="top">(&nbsp;</td>          <td class="md" nowrap valign="top">p&nbsp;</td>          <td class="mdname1" valign="top" nowrap>          </td>          <td class="md" valign="top">&nbsp;)&nbsp;</td>          <td class="md" nowrap>&nbsp;&nbsp;&nbsp;((p) ^ 1)      </table>    </td>  </tr></table><table cellspacing=5 cellpadding=0 border=0>  <tr>    <td>      &nbsp;    </td>    <td><p>macro to swap colors     </td>  </tr></table><a class="anchor" name="ga18" doxytag="solver.c::PLAY_BEST_MOVE_IN_MEMORY_FIRST" ></a><p><table class="mdTable" width="100%" cellpadding="2" cellspacing="0">  <tr>    <td class="mdRow">      <table cellpadding="0" cellspacing="0" border="0">        <tr>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -