leetcode-easy-string- 38 Count and Say
2024-09-05 01:06:26
mycode 91.28%
思路:题意实在太难理解了,尤其是英文又不好,只能参看下别人的资料,理解下规则。终于理解,题意是n=1时输出字符串1;n=2时,数上次字符串中的数值个数,因为上次字符串有1个1,所以输出11;n=3时,由于上次字符是11,有2个1,所以输出21;n=4时,由于上次字符串是21,有1个2和1个1,所以输出1211。依次类推,写个countAndSay(n)函数返回字符串。
class Solution(object):
def countAndSay(self, n):
"""
:type n: int
:rtype: str
"""
from collections import Counter
if n == :
return ''
a = self.countAndSay(n-) res , temp , count = '' , a[] ,
for i in range(,len(a)):
if a[i] == temp:
count +=
else:
res += str(count) + str(temp)
temp = a[i]
count =
res += str(count) + str(temp)
return res
参考
把递归换成了for循环
class Solution(object):
def countAndSay(self, n):
"""
:type n: int
:rtype: str
"""
x= ''
y=''
prev = ''
for i in range(n-1):
count = 0
y = ''
prev = x[0]
for j in x: if prev==j:
count+=1 else:
y+=(str(count)+str(prev))
prev = j
count = 1 y+= (str(count)+str(prev))
print('y: ',y)
x = y return(x)
最新文章
- Unity自动寻路Navmesh之入门
- zmq中zmq_poll()函数介绍
- 访问https链接方法
- Android学习笔记之SoftReference软引用...
- MySQL初始化简单优化
- 【USACO】numtri
- 我的Java后端书架2016年暮春3.0版(转)
- 代码创建FlexibleSpaceBarButton(弹性空白)
- HttpModule HttpHandler HttpHandlerFactory 学习笔记
- Azure 为 SAP 提供的增强监控解决方案
- R与数据分析旧笔记(十一)数据挖掘初步
- Qt生成灰度图(转载)
- hdu 4915 Parenthese sequence 多校第五场
- 利用MD5加密字符串
- 原生aspx页面如何引用公共js和css
- MyBatis中映射器Mapper概述
- 黄聪:PHP调试显示所有错误信息
- [python]关于在python中模块导入问题追加总结
- 【HTML5】HTML5的自学路线
- CodeForces - 645F:Cowslip Collections (组合数&;&;欧拉函数)