//暴力解法
$numStr='23484901923434518703';
$numArr=str_split($numStr);
//连续长度
$len=4;
//最大乘积
$max=0;
//子串记录
$maxStr='';
for($i=0;$i<=count($numArr)-$len;$i++){
$_max=1;
$_maxStr='';
for($j=$i;$j<$i+$len;$j++){
$_max*=$numArr[$j];
$_maxStr.=$numArr[$j].'-';
}
if($_max>$max){
$max=$_max;
$maxStr=rtrim($_maxStr,'-');
}
}
echo $max;
echo '
';
echo $maxStr;
思路:
1、用字符串截取,每次取4个,字串是连续的,那么只有17个字串
2、把这些字串转化为4位数比较大小 找出最大的和第二大的 就是了