

      1. 

       䠩 ᮤন ᠭ ணࠬ, 饩  . ண-
ࠬ 뢠    ॢ  .   .
 ࣠樨 ॡ  ᪥ 室.   ⢥  樨  
࠭  --  - ⮣,   ⠪  ୠ ,   
⮬,   ⠪   ᭠.  ࠦ  뫨  筮  -
묨.

        ஭, ⥫, ⮡  뫠  筮  ᫮,
⮡ ਬ   ⮤ ᮪饭 ॡ ॢ  뫮 
; ਢ  設⢥  (.,  ਬ,  [ᮭ])
ਬ ⨯   ⨪-   3*3 뢠   -
.  㣮 ஭,  ⥫  ६  ᨫ   ணࠬ-
஢ 짮⥫᪮ 䥩,       室
 ⢨ ਢ묨 ।⢠.


      2. ࠢ  

       . 砫    ப    36  -
 (筮,   ࠢ業 ।⮢);    ᯮ
஢   , ஭㬥஢ ᫥ ࠢ.    ᮯ୨-
 ᯮ  ⨢ 㣠. ஬ ⮣,  ப    
ᯥ樠쭮 , 뢠 ""  ᯮ ࠢ  -
⮣ ஢ .    ࠧ 砫 :

                          ப B
                  Ŀ
                   6   5   4   3   2   1   権
       ͻ
             6  6  6  6  6  6      
        ப B ͹ ப A 
                  6  6  6  6  6  6           
       ͼ
                   1   2   3   4   5   6   権
                  
                          ப A

  ⥪   㤥 ᮢ  ⨭, 㤥    -
 ⢠ 誮, 室   ப     ;
砫쭠   ⮬ 룫廊 ⠪:

      0  6  6  6  6  6  6         ப B
         6  6  6  6  6  6  0      ப A


       । 室 騩 ᭨    ᢮   
  ।     ᢮ ᫥騥 ,  ய-
  ,  浪 ⠭  ஢. ,  ᫥騬  
, ⠥ ᢮ .   ।  㦨  -
 (-⠪  浪 ⠭  ஢), ⥬ --  ய⨢
㦮  --   ᢮   ⠪ ,    ᮢ  -
室  ⨢ ᮢ ५. ਬ,   ࢮ   -
 鸞, ३  砫쭮 樨  ᫥饩:

        0  6  6  6  6  6  6
           0  7  7  7  7  7  1

 㪠 室 ப 筮   ; ⠪ ࠧ,
 室 ப   ࢮ    ⠪:  = 1.

      ᫨ 室 稫  ᢮  (.. ᫥   ।-
塞    ᢮ ),  ப    室.  ,
砢訩   ।饬 ਬ,   ୮ -- ਬ,
 ண , ਤ  樨

        0  6  6  6  6  7  7
           0  0  8  8  8  8  2

 ਨ 室 ਭ     室;  뢠  ⠪
"⠢" 室,  १   ,    -
 ᫥⥫  室 ਨ. , ᫨ ᫥  室  
ࢮ  ப   室  ண ,    뢠  
  = 1,2.

        ⠫  ।  室  ।  ⨢.
  ந諮 ᥩ  ⮩  ⨨.  ⨢    ⢥-
 室  ࢮ  (  ᪮ 㢨, 㤠): 室 B = 1
ਢ  樨

        1  7  7  7  7  8  0
           1  0  8  8  8  8  2

       ⮬ 砥,  ᫥  ।塞   
 ᢮ ⮥ ,   ⨢饬  ⨢   -
, ᮤন    (᢮  ⨢) ७  -
 ᤥ襣 室,  । 室 । ⨢.  襩  -
⥫쭮 ⨨  ࠢ  ப  室  ࢮ  -
 ⢥  ᢮ : 室 A = 1 ਢ  樨

        1  7  0  7  7  8  0
           0  0  8  8  8  8  10

      ᫨   ப  ⠥   ,    ,
室騥   ⨢, ७   ⨢,  -
 稢. ᫥ ⠪ 樨      ப    -
  36 .  ⮬ 砥  ⠥,      稫
.   ⠫  먣ࠢ訬 ⠥ ,    ᮡ-
ࠫ  ᢮   36 .

      㬥, ⮡ ।  ⥫,      
襭 - :   ⮫쪮  ,    ,
 ࠫ   , 㦥   ந.  த
  ⠪ 砥 ⮨   ⮣, ⮡ ࠧ  室  ⨨
 ⮬.

       ⮣ 㫨஢ ࠢ .

       1.  ப 室  ।.
      1.1.  । 室 騩 ᭨     ᢮  -
    ।     ᫥騥   -
 ⠭  ஢; , ᫥騬  , ⠥  ᢮
.   ।  㦨  (-⠪   -
 ⠭  ஢), ⥬   ᢮ (㦮   ய-
)  ⠪ ,   ᮢ 室  ⨢ ᮢ ५-
.
      1.2. ᫨ ᫥  ।塞    "᢮"  -
,  ப    室.   ⠫    ।
室 । ⨢.
      1.3. ᫨ ᫥    ⮥   ப,  ᮢ-
蠢襣 室,   ⨢  ᮯ୨     -
,  ᮤন   ७   ப,  ᮢ蠢-
襣 室 (᫥ 祣, ᮣ᭮ ࠢ 1.2, 室 室     -
⨢).
      1.4. ᫨   ப, ᤥ襣 室,  ⠥   -
 ,   , 室騥   ⨢, ७ 
 ⨢,   稢.

       2.  稢,     ⨢  -
祬 室.

       3.  먣뢠 ,    砭      
  .
      ᫨    室  36 , 䨪 .



      3. ⢨  ணࠬ.

       ࠭ ⥪  ।⠢  鸞 : ᢥ-
 ᯮ  ப B, ᭨ --  ப .   -
 ப B     ப A 室   ⮣  .
  ப A   0  5, ப B --  7  11;  -
 ᯮ  祭 室.    室  -
 ப B, ࠢ --  ப A.  ࠭ "" A  B  
 㪠,  祭 ᯮ   䠩, ᮤঠ饬  -
 ࠭ ⨨ (. ).

        ᨨ ப B -- 易⥫쭮 ணࠬ. ப   -
   祫,  ᠬ ணࠬ.

       । 室 ਭ 祫,   孥    㣫
 : " 室:".  ⢥ 㦭    ,  
ண  . ᫨  㪠  ⨬  ,  ந
ᮮ⢥饥 ᪫뢠 , 祬 ᫨    १  室
᫥ 襪   ᢮ ,  . ᫨  㪠-
 ⮥    ୠ , ࠧ      
. ᫨  ⢥     ESC,  ந室  室  
ணࠬ.

       ணࠬ 稭 㬠,   孥 㣫  -
   "㬠...". ᫥ ⮣,  室 ,    -
 ᬥ 㣠: "  {X}".  , 祭    {X}
     ஢ ,       ந-
 室. ਬ,  : "   7  8  9  10".  ⮡
ணࠬ ᤥ   ᫥ 室, 㦭   
ENTER. ᫨  ⠢ 室,  ᫥     室
 "..." , 祬  ᫥⥫쭮  {X}  ᤢ-
 . , ᫥ ਢ  ⢥ ਬ   -
⨥  ENTER ਢ  ᮮ⢥饬  樨  -
࠭   : "  8 9 10".  ᫥  ⮣,    ᤥ
᫥  室, ணࠬ 室   室 ப.

      । 砫  ணࠬ 訢,  㤥 ப   --
祫  設. ᫨ ⢥,  ப  㤥  設,  ண-
ࠬ , 㦭     ENTER ᫥ ⮣,  
࠭   "  ...".     
 ࠧ⨥  ணࠬ  ᮡ,   砭 ⨨ 
  १.  祭 ணࠬ ,   㤥
室  -- ப   ப .

      ࠭  ࠭  䠩 lastgame.klh.  ᯮ
ᠭ  ࠧ 1    ᪫祭:   室  
⤥  㣠 묨 -- ࠧ⥫ﬨ  㦠 ஡.


      4. ।⠢ 樨

      ⢥ ,  室 㬥     ⥪-
饩 樥, -- ᤥ 室, .. ࠧ , 稭  -
 .  ᥣ, 롮 ⭮ ।⠢ । -
ᠬ ணࠬ.

      ० ᥣ,  ⢥  ப  ᨢ  7  -
⮢.  ⠪ ᨢ     ⮢  ᮤঠ  ⢠
    ᮮ⢥騬 ࠬ,  7- --  ⢮  -
  .  ⠪,   ᨢ  14 ⮢,   -
஬  ᥬ ⮢  ।⠢     -
ப,  ᥬ --    㣮.

      ᯮ,    ᢮       -
⨢, ।⥬ ஥ ।⠢: 㤥  ।⠢  
ᨢ desk[14],  ஬  desk[0]..desk[5] --   ப
A, desk[6] --  ,  desk[7]..desk[12] --  ப  B,
 desk[13] --  ப B.  㤥 ।⠢ ஬  ,  
ண 㦭  ᪫뢠 誨.

      ⠪,  desk[14] -- , move -- 室,  㦭 ᤥ-
. 㤭⥩  ॠ樨 ஢ :  -,  㦭  ய-
  ⨢, -,    ⮫쪮,   -
   ப   ࠧ. -  ⮣    㤠
࣠  横. 㭪 scatterStones  ॠ  ᠭ
⢨.  頥 1, ᫨ ᫥     "᢮"  -
,  0  ⨢ 砥. 頥  祭  ᯮ  
஢ન ਬ ࠢ 1.2. ਬ ࠢ 1.3  ""
ᠬ 㭪 scatterStones.

      室  㬥 ஢ ஢, 室   ਬ-
 ࠢ 1.4  砭  (᫨     ⨢-
  ⠫ ,  ..). ⢥騥,  筮  祢-
,  ।⠢ 㭪樥 isEmpty.

      祭, 頥 㭪樥 scatterStones, ᯮ  
஢થ ਬ ࠢ 1.2.  稬, -  ⮣  ࠢ
 㤠 ।⠢ 室  ᫮ -- ஬ . 㤥  -
 㦤騬 室,  ஬ ᫥   ।塞  
  "᢮" ; , 砥  १  㦤-
 室, -- 㦤. ਬ, ,  砥    砫쭮
᫥ 室 A = 1,  㦤. 㦤 樨    㦭
業 -- 業 㦭    㦤  樨.  த
ਢ ਬ: 業 㦭 樨, 砥    १
  室 A = 1,2; A = 1,3; A = 1,4; A = 1,5; A  =  1,6.  -
⢥ ,  樨, ।⢥ 砥    㦤-
,   뭮ﬨ  ⮩ 㦤  樨.    ⮬
᫥ 뢠,  室, ᫥騩  㦤騬,   
ᠬ 㦤騬 -- 殬  室    ਨ  㦤  
 ࢮ  .  , ⠪ ࠧ,  ᠭ   ࠧ
1 "⠢ 室"    ⮫쪮  ᮪饭 .

      ⠪,  , ।⠢饩 㧥 ॢ ,  㤥  -
  室  ᨢ move, ࠧ୮ ண 롥६ -
 ॢ室饩  ᫨ ।;  ⮬    -
६,  ன ࠭  ⥪饥  ⢮  ""  室,
।⠢ "⠢".  ࠧ, 室     ᫥-
饣 :

    typedef struct treeNode {
       int          forced;     /* - 㦤 室.    */
       int          move[30];   /*             */
       int          desk[14];   /*    ப:        */
                                /*      A (0..6)  B (7..13).   */
    } NODE,*PNODE;

筮,  뫮     ।⠢  㧫,  
஬  ய     ,      -
 ஬ .

       ᮡ   ,   ᨢ move ࠭ 室 
।饩 樨  ,  ࠦ  ᨢ desk. ,   -
⭮, 砥,  ᫨ move[0] < 6, .. 室 ப ,   ⥪-
饩 樨 室  ப ; , ᫨ move[0]  >  6,  ..
室 ப ,   ⥪饩 樨 室   ப  .    ⮬
⮬  ஥ 㭪 Aplays (ॠ ᮬ, -
।  䠩 kalah.h), ப  ᯮ㥬  ॡ騬  -
ﬨ.



      5. ॢ   業 樨

       ᪠ 襣 室 ᯮ㥬  ,    -
 楤 F2     .    ᫥  ।
⥪  ਤ㬠 .⮬ /᪠- 몥:

    integer procedure F2(ref(position) p,integer alpha,integer beta):
       begin integer m,t; ref(position) q;
       generate(p);
       q := first(p);
       if q = NULL then F2 := f(p) else
       begin  m := alpha;
          while q <> NULL and m < beta do
             begin t := -F2(q, -beta, -m);
                if t > m then m := t;
                q := next(q);
             end;
          F2 := m;
       end;
    end.

楤 室 業 樨 p, ४ᨢ 業   稭-
  樨;  ६ ᪠  뢠 㭪樨 generate, first 
next, ⢫騥 "室"  ॢ .

      맮 㭪樨 generate ନ  뭮 室 樨 
஬ 浪. 室 ࠬ஬ 㭪樨 generate   
p 㧫,  ண 㦭 ᣥ஢  ॢ.  맮  㭪樨
first 楤 F2  ࢮ    뭮  樨  p,  ᫨  
. ᫥⥫ 맮 next ⠢ ᫥   浪
뭮 樨 p (   --  뭮,  砥    -
 맮 next, 室  ⮬  ஢ ॢ  ,    
, 祭 맮 first).   室 ॢ   㤥
⨣ ନ쭠 , 맮 first/next  NULL.

      ਬ 楤 F2   ᮢ襭  ਢ.  㦭
஦ 㧫 । ஢ ॢ    맮  -
 generate; ᢮  ॢ      -
 業 室 樨.      룫廊  ᮢ-
襭 ⥫쭮, , ᫥ ਭ  ,  ᮢ襭-
  室 ॠ쭮 ந  ॢ ,   -
  ६.  室 ॢ쥢  ⠭⭠ 孨 --  -
짮 ⥪; .  ⮬ ⥫쭮 "⢠ ணࠬ-
஢  " ..  맮 generate/first  ᮮ⢥
 ⠫ (push)  ⥪,     first/next  頥
NULL,  㡨ࠥ (pop)  ⥪ ⥪騩 㧥, 室   㧫,
饣  ⥪ "".

       first 頥 NULL,  p 業  -- 
ணࠬ   㭪  estimate,    頥  
ࠧ , 室   ⨢. ,   ࠧ-
 ६  ନ쭮 樨 㤠   ᠬ   -
, ⮬  砫  ।   㦤 ࠭稢  㡨-
 ᬮ:  ନ묨  㧫,  室騥    ஢,
襬 ,   業 㭪  .

      ⠭ ᯮᮡ ࠭祭 㡨 ᬮ  砥  
⮬,  㭪 generate(p)    뭮  樨  p,  ᫨
஢ p ॢ室 ⠭ MAXLEVEL, ࠭稢 㡨 -
.  ⠭ 㤥  ࠬ஬,    ண-
ࠬ.  㭪 first  NULL.

      , 㥬 楤ன F2,  ணࠬ  ॠ  -
 ABprune.  ᮤঠ ਨ  ⮩ ॠ樨. ࠧ -
   ⫨稥 ABprune  ਢ   "᪮"
ਠ F2:  맮 㭪樨 generate --   -
 , ࠢ騥 ⥪騬 ஢ ॢ .

      騩 ஢ ᬠਢ 㧫 ॢ   ᮤন  
६ cL. ॡ 樨 ஢ cL,  㤥  ᯮ짮  cL-
 ᨢ wStack ⨯ NODE. 楤 first 樠  cL-
 ⮣ ᨢ,  楤 next 㢥稢  1   move  
頥 NULL, ᫨ 祭 ⮣  諮  ⨬ ।.

      㭪 first ஢ 祭 cL: ᫨  ࠢ﫮   -
ᨬ쭮 ⨬ ஢ ॡ, 㭪 頥 NULL,   -
⨢ 砥 ⠭  cL-  ᨢ wStack, -
 祣 뢠 楤 next,  ⠥ ᤥ  ।
⨬ 室. ⠭ 祭 wStack[cL].move[0] --  "।-
ࢮ",  㤥 㢥祭  㭪樨 next.

      ᪮쪮 ᫮ ஥ 㭪 next.   室  ࠬ஬
 業 㧥 p. ᯮ ଠ  室 樨,
ᮤঠ  p->desk,  ⥪ , ᮤঠ  cL- -
 ⥪ wStack[cL], 㭪 next ନ  ᫥  ,  ᫨
 .

      ० ᥣ  㦭 "" ,  뫠    
 ⮣,   ᤥ ᫥ 室.  祭 , ᫨   -
  ਡ뫨 ।⢥  樨 p,  室  -
஬, ᫨    뫮 㦤 権.  ⮬ 砥 
筮 ᪮஢   p  wStack[cL]. ᫨  뫨  ᤥ-
 ஢ 室, wStack[cL].forced > 0 , ,  㦭  -
 , 砥  樨  p->desk  ஢묨  室
wStack[cL].move[0],  wStack[cL].move[1],...,    室        ஬
wStack[cL].forced-1. ⢥騥 ⢨ ॠ 㭪 retPos.

      । 室   ᤥ  ⮣ ,  -
  , 室  ண  ᬠਢ ࠭.  ⮬  -
室 , 㤠  ᫥ ;  㭪  scatterStones
頥 1, ᫨    ᢮ . ᫨ ᤥ 室  ਢ-
  ஢ , 㢥稢  1 祭    forced
, ᮮ⢥騩    ᨢ  move  ⠭  
"।ࢮ" ﭨ   室 . ᫨ ⨬  -
 , 㭪 ⠥ 㬥 ᮤন  forced --   -
    祭    ஢.    祭
forced ࠢ ,   ⨬  室  ,  㭪  頥
NULL. ᫨  forced > 0,  ᪠ 室 .

      ᯮ ,   㦭 ࠢ ⥪騬 ஢ ॢ -
 (쭠 ६ cL).  ⢥ 뫮    㢥-
   楤 first  㬥  next.  ⮬, , -
 㤭 ᮣᮢ ࠡ first/next   ॡ஬:    
易⥫쭮 楤 next ࠡ⠥   -- ᬮ    -
஥ ᫮ 室  横  F2. ⮬ 뫮 ਭ  襭  -
 ६ cL  楤 ABprune.

      ਬ    業 ନ 権.    -
⢠ ⥩  ࠭ ⥩: 業 樨  -
 ࠧ ⢠    ⨢. ᭮,  ᫨  
樨 室 ᤥ ப ,  먣뢠 desk[6] - desk[13], ᫨  
室 ᤥ ப B,  먣뢠 desk[13] - desk[6].    ॠ
ਢ  ணࠬ 㭪 estimate.

       , 饭 ணࠬ    ,  ਢ
  ᫮ 㭪樨.

         ᭮  ⨨ ⨢  .    ਭ
ࠢ  ,   室  ⮣   ᢮ -
 (   ),  ⢮,   ⮬  -
 ⨢,  ᥬ.  ᥬન   ⮣,  ⮡
⨢ 类 ⮣  뫠 ⥫쭮. ⨢  -
⮣   । ࠢ . 㬬 ⨢⥩   
稬 १ Da  Db, ⢠ ,     ,  --
१ Ka  Kb.  ୠ "Electronische  Rechenanlagen"  (1970,  No.1)
檨 ⥬⨪ .奭 ᠫ ணࠬ, 業筠  㭪  
ன ࠢ﫠 W = Ka*Da - Kb*Db.    ୠ  "㪠
 ", 1971, N 12, . 106- 114.

       ⮬   ୠ "㪠  "  ᬮ७    㣠
業筠 㭪, । ..⨭:

     W = (Ka + 17.3/(37-Ka) - 40/Da) - (Kb + 17.3/(37-Kb) - 40/Db).

 ணࠬ 롨ࠫ ࠧ 㡨 ॡ   ࠧ  ਠ⮢,
㤥 ᭮   ।⥫  ⮣,  ਭ-
 । 室;  ⮬  ࠧ蠫 ᬠਢ   -
 権.

       ஢ ॢ ணࠬ .奭࣠    ..⨭
 ணࠬ ⨭,     騬 १⮬.

      ஢ ᯥਬ  ᠭ  ணࠬ  ,
 㦥 ⥩ 業筠 㭪    뢠騩  ॡ  
㡨 3, ॠ㥬 - 楤ன,      ਫ
.



      6. 祭

       ணࠬ஢ ᫮ ⬮  ᫮ ஡-
   ⫠.   ⮫쪮  ⮬,    㤭  ਤ㬠
뢠騩  ⮢.   ⮬,  ⠪     ᥣ
 ਣ⮢ "㪮" -- 室    ணࠬ,
 ᠬ 筮 ᫮ , , 筮 ᫮   ⫠-
. 室 ᭮ 㬠  ஢ ணࠬ ⮢ ⮢
 ..

       ணࠬ஢   ⠫ ஢    ⠪  -
樥. ⮬,   筮 ⥫쭠 ࠡ  -
筮 ꥬ ஥⮬ (᪠,  㬠 ணࠬ஢  -
), 室  ।ᬠਢ    ।⢠  ᫥
ணࠬ.

      ᪭ ⢥ত,  ⠪ ।⢠ 㦭 ᥣ    ⮡  
室  ਬ஬ , ᪠,         ਢ
  - ⮭ 訡,    㬥 
 㤠.  ஬  訡      㦠  
⨨,   ணࠬ ࠥ "࠭" --    窨  ७.
 ਬ ⠪ -- ࠭ -- ⨨:

      ப A : ணࠬ
      ப B : ணࠬ
       室 ப A


       1) A:  0  3            B: 11
       2) A:  5               B:  7
       3) A:  2               B: 11  9
       4) A:  3  5            B: 11
       5) A:  2               B: 12
       6) A:  5  3            B:  8
       7) A:  0  5  4  5      B: 11 10
       8) A:  5  4  5  1      B: 11  9  8
       9) A:  2               B: 10 11 12
      10) A:  5               B:  7
      11) A:  4               B:  9
      12) A:  5  3            B:  9
      13) A:  5  4            B: 10 12 11

        砭 :
                 - 32
                B - 40

 ࠫ  MAXLEVEL, ࠢ 5.

      筮,  , ணࠬ ࠡ⠥  ୮  (    
"୮"   ⥪?),  ࠭  맢    㡨
 ॡ:     ⮣,   ணࠬ.

         ࠤ 㧭  - ࠢ  ⮩ ணࠬ.

         .㡭, (095) 331-54-27
