/**
* 计算 Ax+By=C
*/
function suan($A, $B, $C) {
$A--;
$B--;
$str = str_repeat('-', $C);
$search = '/^(.*)1{' . $A . '}(.*)2{' . $B . '}$/';
preg_match($search, $str, $r);
return array('x' => strlen($r[1]), 'y' => strlen($r[2]));
}
$A = 2;
$B = 3;
$C = 9;
$r = suan($A, $B, $C);
// 测试
echo '计算' . $A . 'x+' . $B . 'y=' . $C . ' ';
echo 'x=' . ($r[x]) . ' ';
echo 'y=' . ($r[y]);
// 输出
// 计算2x+3y=9
// x=3
// y=1
?>
|