那么手动是什么命令啊? 提示:每次改写ResultText前将ResultText置0
[ 本帖最后由 zbugbug 于 2008-4-10 10:44 PM 编辑 ] 太niub了。。。。 bug是我偶像。。。。这是我认为最智能化的一个机器人,有IQ了。 原帖由 <i>whuan</i> 于 2007-11-22 02:20 PM 发表 <a href="http://advent.pkuxkx.com:1234/forum/redirect.php?goto=findpost&pid=15046&ptid=2719" target="_blank"><img src="http://advent.pkuxkx.com:1234/forum/images/common/back.gif" border="0" onclick="zoom(this)" onload="attachimg(this, 'load')" alt="" /></a><br />
over all <br />
agree whuan 原来bug是用筛法做的,我以为是用分析的方法做的。。。。
bug走下神坛。。。 很早就做出来给 店小二 偷师用了,不知道他有什么成果
贴出代码,给有心人用吧
另外我这个是通过mush的com组件调用httpxml进行在线猜的,不必要和软件切换来切换去,很爽~~~~~~完全整合mush
$result = trim( $_GET['result'] );
$guess = trim( $_GET['guess'] );
if( $guess != '' && $result == '' )
{
echo -3;
exit;
}
$result = intval( $result );
foreach( $list as $k=>$v )
{
if( chkScore($guess,$v) != $result )
{
unset( $list[$k] );
}
}
echo get_rand( $list );
$list_o = serialize( $list );
file_put_contents( $data_file, $list_o );
//随机取出一个数
function get_rand( &$list )
{
$item = array_rand( $list );
//unset( $list[$item] );
return $item;
}
function new_list()
{
for( $s1=1;$s1<=8;$s1++ )
{
for( $s2=1;$s2<=8;$s2++ )
{
for( $s3=1;$s3<=8;$s3++ )
{
for( $s4=1;$s4<=8;$s4++ )
{
if( $s1 == $s2 || $s1 == $s3 || $s1 == $s4 || $s2 == $s3 || $s2 == $s4 || $s3 == $s4 )
{
continue;
}
$key = $s1 . $s2 . $s3 . $s4;
$list[$key] = $key;
}
}
}
}
return $list;
}
//print_r( $list );
//echo chkScore( '1473','1245');
function chkScore($guessnum,$textnum)
{
$guessnum = strval( $guessnum );
$textnum = strval( $textnum );
$a=0;
$b=0;
for($i=0;$i<4;$i++)
{
for($j=0;$j<4;$j++)
{
if( $guessnum[$j] == $textnum[$i] )
{
if($i==$j)
{
$a++;
}
else
{
$b++;
}
}
}
}
return $a*10+$b;
}
[ 本帖最后由 fanisky 于 2008-12-8 03:23 PM 编辑 ] 不明白怎么用 谁能教教我们 第二个也还是有问题啊,至少25%以上几率会在猜到某数字后就使劲重复以至失败,除非在发现重复时点一下手动按钮.......楼主大人检查一下程序,修改一小下吧
页:
1
[2]