給定乙個正整數 n(1 ≤ n ≤ 30),輸出外觀數列的第 n 項。
注意:整數序列中的每一項將表示為乙個字串。
「外觀數列」是乙個整數序列,從數字 1 開始,序列中的每一項都是對前一項的描述。前五項如下:
1.12.
113.
214.
1211
5.111221
php**
function
countandsay($n
)$s="1"
;for($k
=1;$k
<$n;
$k++)if
($i==strlen($s
)-1)
}$s=implode
($arr);
}return$s;
}
golang型別轉換,字串切片
import
"strconv"
import
"strings"
func
countandsay
(n int
)string
return strings.
join
(convert
(n),"")
}func
convert
(n int)[
]string
} level:=
convert
(n-1
) l,i,j :=
string,0
,0for i<
len(level)
if i+1==
len(level)
i++}return l
}
import
"strings"
import
"strconv"
func
countandsay
( n int
)string
n--rs :=
intfor
;n>
0;n--
k=i}
if i==
len(rs)-1
} rs = l
}var b strings.builder
for_,v :=
range rs
return b.
string()
}
類似於單鏈表中的dummy
節點,rs +="$"
故意為之,處理合理的資料越界,即減少**量
import
"bytes"
import
"strconv"
func
countandsay
( n int
)string
} rs = buf.
string()
buf.
reset()
}return rs
}
1084 外觀數列
1084 外觀數列 20 分 外觀數列是指具有以下特點的整數序列 d,d1,d111,d113,d11231,d112213111,它從不等於 1 的數字d開始,序列的第 n 1 項是對第 n 項的描述。比如第 2 項表示第 1 項有 1 個d,所以就是d1 第 2 項是 1 個d 對應d1 和 1...
1084 外觀數列
1084 外觀數列 20 分 外觀數列是指具有以下特點的整數序列 d,d1,d111,d113,d11231,d112213111,它從不等於 1 的數字d開始,序列的第 n 1 項是對第 n 項的描述。比如第 2 項表示第 1 項有 1 個d,所以就是d1 第 2 項是 1 個d 對應d1 和 1...
1084 外觀數列
1084 外觀數列 20 分 外觀數列是指具有以下特點的整數序列 d,d1,d111,d113,d11231,d112213111,它從不等於 1 的數字d開始,序列的第 n 1 項是對第 n 項的描述。比如第 2 項表示第 1 項有 1 個d,所以就是d1 第 2 項是 1 個d 對應d1 和 1...