报数:
PHP 16ms:
饶舌的题目嘻哈的程序员。本题解法使用递归。
class Solution {
/**
* @param Integer $n
* @return String
*/
function countAndSay($n) {
if($n == 1){
return '1';
}
$str = $this->countAndSay($n-1);
$re = '';
$len = strlen($str);
for($i = 0;$i < $len;$i++){
$count = 1;
while($str[$i] == $str[$i+1]){
++$count;
++$i;
}
$re .= strval($count);
$re .= $str[$i];
}
return $re;
}
}