{"id":334,"date":"2006-05-25T16:46:28","date_gmt":"2006-05-25T16:46:28","guid":{"rendered":"http:\/\/fanhaijun.com\/?p=334"},"modified":"2026-04-07T14:04:17","modified_gmt":"2026-04-07T06:04:17","slug":"%e6%93%8d%e4%bd%9c%e7%b3%bb%e7%bb%9f%e5%ae%9e%e9%aa%8c","status":"publish","type":"post","link":"https:\/\/fanhaijun.com\/?p=334","title":{"rendered":"\u64cd\u4f5c\u7cfb\u7edf\u5b9e\u9a8c"},"content":{"rendered":"<p>\u5b9e\u9a8c\u4e00\uff1a\u751f\u4ea7\u8005\u6d88\u8d39\u8005\u8fdb\u7a0b(delphi\u4ee3\u7801+\u7a0b\u5e8f)<br \/>\u5b9e\u9a8c\u62a5\u544a\uff1a<a href=\"\/wp-content\/uploads\/2006\/05\/29_161625_pc.doc\" title=\"\/wp-content\/uploads\/2006\/05\/29_161625_pc.doc\" target=\"_blank\">\u70b9\u51fb\u4e0b\u8f7d<\/a><br \/>\u6e90\u6587\u4ef6\uff1a&nbsp;&nbsp;&nbsp;<a href=\"\/wp-content\/uploads\/2006\/05\/25_164710_procon.rar\" title=\"\/wp-content\/uploads\/2006\/05\/25_164710_procon.rar\" target=\"_blank\">\u70b9\u51fb\u4e0b\u8f7d<\/a><br \/>unit&nbsp;Unit1;<\/p>\n<p>interface<\/p>\n<p>uses<br \/>&nbsp;&nbsp;Windows,&nbsp;Messages,&nbsp;SysUtils,&nbsp;Variants,&nbsp;Classes,&nbsp;Graphics,&nbsp;Controls,&nbsp;Forms,<br \/>&nbsp;&nbsp;Dialogs,&nbsp;StdCtrls,&nbsp;ExtCtrls,&nbsp;ComCtrls,&nbsp;Buttons,StrUtils;<\/p>\n<p>type<br \/>&nbsp;&nbsp;TForm1&nbsp;=&nbsp;class(TForm)<br \/>&nbsp;&nbsp;&nbsp;GroupBox1:&nbsp;TGroupBox;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;GroupBox2:&nbsp;TGroupBox;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;GroupBox3:&nbsp;TGroupBox;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;ListBox1:&nbsp;TListBox;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;ListBox2:&nbsp;TListBox;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;ListBox3:&nbsp;TListBox;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;GroupBox4:&nbsp;TGroupBox;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;GroupBox5:&nbsp;TGroupBox;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;Button1:&nbsp;TButton;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;Edit1:&nbsp;TEdit;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;Label2:&nbsp;TLabel;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;memo1:&nbsp;TMemo;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;BitBtn1:&nbsp;TBitBtn;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;BitBtn2:&nbsp;TBitBtn;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;BitBtn3:&nbsp;TBitBtn;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;Label1:&nbsp;TLabel;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;memo2:&nbsp;TMemo;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;Label3:&nbsp;TLabel;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;procedure&nbsp;Button2Click(Sender:&nbsp;TObject);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;procedure&nbsp;FormActivate(Sender:&nbsp;TObject);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;procedure&nbsp;Button1Click(Sender:&nbsp;TObject);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;procedure&nbsp;BitBtn2Click(Sender:&nbsp;TObject);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;procedure&nbsp;BitBtn1Click(Sender:&nbsp;TObject);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;procedure&nbsp;BitBtn3Click(Sender:&nbsp;TObject);<\/p>\n<p>&nbsp;&nbsp;private<br \/>&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;Private&nbsp;declarations&nbsp;}<br \/>&nbsp;&nbsp;public<br \/>&nbsp;&nbsp;&nbsp;&nbsp;{&nbsp;Public&nbsp;declarations&nbsp;}<br \/>&nbsp;&nbsp;end;<br \/>type<br \/>&nbsp;&nbsp;MyArray=array[0..14]&nbsp;of&nbsp;string;<br \/>var<br \/>&nbsp;&nbsp;Form1:&nbsp;TForm1;<br \/>&nbsp;&nbsp;memo1:&nbsp;TMemo;<br \/>&nbsp;&nbsp;memo2:&nbsp;TMemo;<br \/>&nbsp;&nbsp;hcdl,zsdl,jxdl:MyArray;<br \/>&nbsp;&nbsp;steps:integer=0;<br \/>&nbsp;&nbsp;function&nbsp;sta(dl:MyArray):string;<br \/>&nbsp;&nbsp;function&nbsp;searchPC(pc:string;dl:MyArray):integer;<br \/>&nbsp;&nbsp;function&nbsp;dlval(dl:MyArray;pos:integer):string;<br \/>&nbsp;&nbsp;procedure&nbsp;PC(var&nbsp;dl:MyArray;pos:integer);<br \/>&nbsp;&nbsp;procedure&nbsp;ZS(var&nbsp;dl:MyArray;pos:integer);&nbsp;&nbsp;<br \/>implementation<\/p>\n<p>{$R&nbsp;*.dfm}<\/p>\n<p>procedure&nbsp;TForm1.Button2Click(Sender:&nbsp;TObject);<br \/>begin<br \/>self.Close;<br \/>end;<\/p>\n<p>procedure&nbsp;TForm1.FormActivate(Sender:&nbsp;TObject);<br \/>var<br \/>&nbsp;i:integer;<br \/>begin<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;listbox1.Items.Clear;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;listbox2.Items.Clear;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;listbox3.Items.Clear;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;memo1.Clear;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;memo2.Clear;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;edit1.Clear;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;bitbtn3.Enabled:=false;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;steps:=0;<br \/>&nbsp;for&nbsp;i:=0&nbsp;to&nbsp;14&nbsp;do<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hcdl[i]:=&#39;&#39;;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;zsdl[i]:=&#39;&#39;;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;jxdl[i]:=&#39;&#39;;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;listbox1.Items.Add(&#39;&#39;);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;listbox2.Items.Add(&#39;&#39;);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;listbox3.Items.Add(&#39;&#39;);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br \/>&nbsp;<br \/>end;<\/p>\n<p>procedure&nbsp;TForm1.Button1Click(Sender:&nbsp;TObject);<br \/>&nbsp;&nbsp;var<br \/>&nbsp;&nbsp;num,rnd,i:integer;<\/p>\n<p>begin<br \/>&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;&nbsp;edit1.text=&#39;&#39;&nbsp;then<br \/>&nbsp;&nbsp;&nbsp;&nbsp;begin<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;exit;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;end;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;num:=strtoint(edit1.text);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(num&gt;15)&nbsp;or&nbsp;(num&lt;=0)&nbsp;&nbsp;then<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;showMessage&nbsp;(&#39;\u8bf7\u8f93\u51651-15\u7684\u6570\u5b57\uff01&#39;);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;edit1.Clear;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;edit1.SetFocus;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end<br \/>&nbsp;&nbsp;&nbsp;&nbsp;else<br \/>&nbsp;&nbsp;&nbsp;&nbsp;begin<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;i:=0&nbsp;to&nbsp;num-1&nbsp;do<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Randomize;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rnd:=random(8)+1;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(rnd&gt;=1)and&nbsp;(rnd&lt;=4)&nbsp;&nbsp;then<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;jxdl[i]:=&#39;P&#39;+inttostr(rnd)<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;jxdl[i]:=&#39;C&#39;+inttostr(rnd-4);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;listbox3.Items.Clear;<br \/>&nbsp;for&nbsp;i:=low(jxdl)&nbsp;to&nbsp;num-1&nbsp;do<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;listbox3.Items.Add(jxdl[i]);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;steps:=steps+1;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;memo2.Lines.Add(inttostr(steps)+&#39;\uff1a\u968f\u673a\u751f\u6210\u4e86&#39;+inttostr(num)+&#39;\u4e2a\u8fdb\u7a0b\uff01&#39;);<br \/>&nbsp;&nbsp;&nbsp;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;for&nbsp;i:=num&nbsp;to&nbsp;high(jxdl)&nbsp;do<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;listbox3.Items.Add(&#39;&#39;);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;end;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;bitbtn3.Enabled:=true;<br \/>end;<\/p>\n<p>procedure&nbsp;TForm1.BitBtn2Click(Sender:&nbsp;TObject);<br \/>begin<br \/>self.Close;<br \/>end;<\/p>\n<p>procedure&nbsp;TForm1.BitBtn1Click(Sender:&nbsp;TObject);<br \/>begin<br \/>self.FormActivate(Sender);<br \/>end;<\/p>\n<p>procedure&nbsp;TForm1.BitBtn3Click(Sender:&nbsp;TObject);<br \/>var<br \/>&nbsp;&nbsp;zsdlsta,hcdlsta,jxdlsta:string;<br \/>&nbsp;&nbsp;jxtop:string;<br \/>begin<br \/>zsdlsta:=sta(zsdl);\/\/\u5224\u65ad\u963b\u585e\u961f\u5217\u72b6\u6001\uff0c\u7a7a\u4e0e\u975e\u7a7a<br \/>hcdlsta:=sta(hcdl);\/\/\u5224\u65ad\u7f13\u51b2\u6c60\u72b6\u6001<br \/>jxdlsta:=sta(jxdl);\/\/\u5c31\u7eea\u961f\u5217\u72b6\u6001<br \/>jxtop:=dlval(jxdl,0);\/\/\u5224\u65ad\u5c31\u7eea\u961f\u5217\u7b2c\u4e00\u4e2a\u8fdb\u7a0b\u7684\u7c7b\u578b<br \/>if&nbsp;zsdlsta&lt;&gt;&#39;empty&#39;&nbsp;then<br \/>&nbsp;&nbsp;&nbsp;&nbsp;begin&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\/\/\u963b\u585e\u4e0d\u4e3a\u7a7a&nbsp;\uff0c\u5c31\u4ece\u963b\u585e\u961f\u5217\u62ff<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;{steps:=steps+1;<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;memo2.Lines.Add(inttostr(steps)+&#39;\uff1a\u963b\u585e\u961f\u5217\u4e0d\u4e3a\u7a7a&#39;);<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;&nbsp;&nbsp;hcdlsta=&#39;empty&#39;&nbsp;then&nbsp;\/\/\u7f13\u51b2\u4e3a\u7a7a\uff0c\u9700\u8981\u751f\u4ea7\u8005<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;begin<br \/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;\/\/&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;showmessage(&#39;\u5728<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u5b9e\u9a8c\u4e00\uff1a\u751f\u4ea7\u8005\u6d88\u8d39\u8005\u8fdb\u7a0b(delphi\u4ee3\u7801+\u7a0b\u5e8f)\u5b9e\u9a8c\u62a5\u544a\uff1a&hellip;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_lmt_disableupdate":"","_lmt_disable":"","footnotes":""},"categories":[101],"tags":[],"class_list":["post-334","post","type-post","status-publish","format-standard","hentry","category-college-life"],"_links":{"self":[{"href":"https:\/\/fanhaijun.com\/index.php?rest_route=\/wp\/v2\/posts\/334","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fanhaijun.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fanhaijun.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fanhaijun.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fanhaijun.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=334"}],"version-history":[{"count":0,"href":"https:\/\/fanhaijun.com\/index.php?rest_route=\/wp\/v2\/posts\/334\/revisions"}],"wp:attachment":[{"href":"https:\/\/fanhaijun.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=334"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fanhaijun.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=334"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fanhaijun.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=334"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}