PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

hotmail outlook Look And Say 序列php实现代码

原创
2016-07-29 08:45:12 1154浏览

比如:
第一个数字是:1。
看着第一个数字你可以说1个1,那么第二个数字就是:11。
看着第二个数字你可以说2个1,即第三个数字是:21。
看着第三个数字你可以说1个2,1个1,即第四个数字是:1211。
看着第四个数字你可以说1个1,1个2,2个1,即第五个数字是:111221。
…………
根据详细的说明可以参见:http://en.wikipedia.org/wiki/Look-and-say_sequence
下面用PHP实现这个序列,如下:

复制代码 代码如下:


function look($str)
{
$len = strlen($str);
$count=0;
$result='';
$temp=$str[0];
for($i=0;$i{
if($temp!=$str[$i])
{
$result.=$count.$temp;
$temp = $str[$i];
$count=1;
}
else
{
$count++;
}
}
$result.=$count.$temp;
return $result;
}
$test_str = "1";
echo $test_str.'';
for($i=0;$i{
$test_str=look($test_str);
print $test_str."";
}


注意look函数中的for循环,当$len-1时,$result并未累加最后一位数字的统计结果,所以在循环完成后再次累加一次。
最后输出结果:
1
11
21
1211
111221
312211
13112221
1113213211
31131211131221
13211311123113112211
11131221133112132113212221
作者:ywxgod

以上就介绍了hotmail outlook Look And Say 序列php实现代码,包括了hotmail outlook方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。