題目
報數序列是乙個整數序列,按照其中的整數的順序進行報數,得到下乙個數。其前五項如下:1.12.11
3.21
4.1211
5.111221
1 被讀作("乙個一
"), 即 11。11 被讀作("
兩個一
"), 即 21。21 被讀作("
乙個二
", 「乙個一
」), 即 1211。
給定乙個正整數 n(1 ≤ n ≤ 30),輸出報數序列的第 n 項。這個題有點奇葩,多讀幾遍就懂了注意:整數順序將表示為乙個字串。
**
class
solution
(object):
defcountandsay
(self, n)
:"""
:type n: int
:rtype: str
"""d =
'1'for i in
range
(n-1):
tem = d[0]
s ='' count =
0for x in d:
if tem == x:
count +=
1continue
s +=
str(count)
+ tem
count =
1 tem = x
s +=
str(count)
+ tem
d = s
return d
報數(LeetCode第38題)
class solution def countandsay self,n type n int rtype str output str 1 for i in range n 1 for i in range 0 這是不執行的 count 0 s 儲存第i個的報數值,在新一輪迴圈之後清空 fris...
Leetcode刷題(38 報數)
示例 1 1121 1211 111221 1 被讀作 one 1 乙個一 即 11。11 被讀作 two 1s 兩個一 即 21。21 被讀作 one 2 one 1 乙個二 乙個一 即 1211。給定乙個正整數 n 1 n 30 輸出報數序列的第 n 項。注意 整數順序將表示為乙個字串。每次迭代...
LeetCode38 報數 水題
一開始每太看懂題目 其實就是一開始是 1 然後就是對上面報數 1乙個1 11 再對上面報數 2個1 21 再對上面報數 乙個2,乙個1 1211 報數,就是將上面的數字從左到右,將個數和數字念出來。這就好辦了,建立乙個陣列就好了,每次取前面的數字 對它遍歷,計算個數。很多坑沒有注意到,粗心了 pub...