您的位置:首页 > 编程语言 > PHP开发

回文数字提取(PHP)

2017-11-13 11:53 183 查看
$time = time();
$arr = range("A", 'z');
//        $arr = range(0, 100);
//        var_dump($arr);
//        $str = implode('', $arr).'222222';
//        echo $str;
//        die();
$str = '';
for ($i = 0; $i < 5000000; $i++) {
$num = rand(0, 57);
$str .= $arr[$num];
if ($i % 2000 == 0) {
$str = $str . $num;
}
}

$length = 50000000;
//        echo $str;
//        echo $length . PHP_EOL;
//        die();
$huiwendata = array();
for ($i = 2; $i < $length; $i++) {

if (isset($str[$i + 2]) && isset($str[$i - 1]) && isset($str[$i]) && ($str[$i] = $str[$i + 1])) {
$mark = true;
$qian = $i - 1;
$hou = $i + 2;
$huiwen = $str[$i] . $s
4000
tr[$i + 1];
$huiwenmark = $huiwen;
while ($mark == true) {
if (!($qian > 0 && isset($str[$hou]) && ($str[$i] == $str[$i + 1]) && $str[$qian] == $str[$hou])) {
$mark = FALSE;
} else {
$add = true;
}
//
if ($mark && $add) {
$huiwen = $str[$qian] . $huiwen . $str[$hou];
$qian = $qian - 1;
$hou = $hou + 1;
if (strlen($huiwen) > 100) {
continue;
}
}
}
if ($huiwenmark != $huiwen) {
//           echo $huiwen . '<br/>';
$huiwendata[] = $huiwen;
}
}
}
// echo time() - $time;
//        print_r($huiwendata);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: