Look And Say 序列php实现代码


Posted in PHP onMay 22, 2011

比如:
第一个数字是: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<$len;$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.'</br>'; 
for($i=0;$i<10;$i++) 
{ 
$test_str=look($test_str); 
print $test_str."</br>"; 
}

注意look函数中的for循环,当$len-1时,$result并未累加最后一位数字的统计结果,所以在循环完成后再次累加一次。

最后输出结果:

1
11
21
1211
111221
312211
13112221
1113213211
31131211131221
13211311123113112211
11131221133112132113212221

作者:ywxgod

PHP 相关文章推荐
php带密码功能并下载远程文件保存本地指定目录 修改加强版
May 16 PHP
解析PHP正则提取或替换img标记属性
Jun 26 PHP
浅析linux下apache服务器的配置和管理
Aug 10 PHP
PHP怎么实现网站保存快捷方式方便用户随时浏览
Aug 15 PHP
浅析ThinkPHP中execute和query方法的区别
Jun 13 PHP
thinkphp循环结构用法实例
Nov 24 PHP
CodeIgniter删除和设置Cookie的方法
Apr 07 PHP
php用户注册信息验证正则表达式
Nov 12 PHP
PHP统计目录中文件以及目录中目录大小的方法
Jan 09 PHP
php利用云片网实现短信验证码功能的示例代码
Nov 18 PHP
PHP获取数据库表中的数据插入新的表再原删除数据方法
Oct 12 PHP
laravel 解决ajax异步提交数据,并还回填充表格的问题
Oct 15 PHP
php利用cookie实现访问次数统计代码
May 19 #PHP
PHP操作mysql函数详解,mysql和php交互函数
May 19 #PHP
php异常:Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE  eval()'d code error
May 19 #PHP
php中全局变量global的使用演示代码
May 18 #PHP
一个PHP分页类的代码
May 18 #PHP
PHP sprintf()函数用例解析
May 18 #PHP
PHP 命令行参数详解及应用
May 18 #PHP
You might like
mysq GBKl乱码
2006/11/28 PHP
kohana框架上传文件验证规则写法示例
2014/07/14 PHP
Thinkphp事务操作实例(推荐)
2017/04/01 PHP
线路分流自动跳转代码;希望对大家有用!
2006/12/02 Javascript
Mootools 1.2 手风琴(Accordion)教程
2009/09/15 Javascript
学习ExtJS Panel常用方法
2009/10/07 Javascript
网易JS面试题与Javascript词法作用域说明
2010/11/09 Javascript
Javascript控制页面链接在新窗口打开具体方法
2013/08/16 Javascript
get(0).tagName获得作用标签示例代码
2014/10/08 Javascript
使用AngularJS 应用访问 Android 手机的图片库
2015/03/24 Javascript
详解JavaScript操作HTML DOM的基本方式
2015/10/21 Javascript
JS实用技巧小结(屏蔽错误、div滚动条设置、背景图片位置等)
2016/06/16 Javascript
Bootstrap表单布局
2016/07/19 Javascript
ExtJS 4.2 Grid组件单元格合并的方法
2016/10/12 Javascript
利用nodejs监控文件变化并使用sftp上传到服务器
2017/02/18 NodeJs
微信小程序开发之相册选择和拍照详解及实例代码
2017/02/22 Javascript
实例讲解DataTables固定表格宽度(设置横向滚动条)
2017/07/11 Javascript
vue实现word,pdf文件的导出功能
2018/07/31 Javascript
vue中的自定义分页插件组件的示例
2018/08/18 Javascript
代码分析vue中如何配置less
2018/09/28 Javascript
javaScript中indexOf用法技巧
2019/11/26 Javascript
在vue中使用echarts(折线图的demo,markline用法)
2020/07/20 Javascript
vue swipeCell滑动单元格(仿微信)的实现示例
2020/09/14 Javascript
OpenLayers3实现测量功能
2020/09/25 Javascript
[02:57]2014DOTA2国际邀请赛-观众采访
2014/07/19 DOTA
在Linux中通过Python脚本访问mdb数据库的方法
2015/05/06 Python
python 美化输出信息的实例
2018/10/15 Python
Pycharm设置utf-8自动显示方法
2019/01/17 Python
四议两公开实施方案
2014/03/28 职场文书
运动会广播稿200字
2014/10/18 职场文书
2014年前台个人工作总结
2014/11/14 职场文书
《所见》教学反思
2016/02/23 职场文书
爱心捐款倡议书:点燃希望,传递温暖
2019/11/04 职场文书
Python基本数据类型之字符串str
2021/07/21 Python
nginx服务器的下载安装与使用详解
2021/08/02 Servers
Python之matplotlib绘制折线图
2022/04/13 Python