一起挑战pythontip的题目(33)

简介: 一起挑战pythontip的题目(33)

第 161 题:压缩字符串


题目描述: 给出一个字符串 a,你需要通过将字符串中连续的字母表示为:字母+出现次数

的方式来压缩


这个字符串。例如 "aabcccccaaa" 将被压缩成 "a2b1c5a3"。如果压缩后的字符串比原本的

字符串长,则直接打印原本的字符串 a。


例如:a="aabcccccaaa", 则输出:a2b1c5a3

>>> def strcompress(s):
  if s=='':
    return ''
  if len(s)==1:
    return s+'1'
  res,n=s[0],1
  for i,c in enumerate(s[1:]):
    if c==s[i]:
      n+=1
    else:
      res+=str(n)+c
      n=1
  return res+str(n)
>>> a="aabcccccaaa"
>>> strcompress(a)
'a2b1c5a3'
>>> 


============================================================

第 162 题:字符串编辑


题目描述:对于一个字符串,你可以进行三种操作:


1.插入一个字符 2.删除一个字符 3.替换一个字符

现在给出两个字符串 a,b,判断其中的一个字符串是否能通过

最多一次的操作转换为另一个字符串。若能,则打印 YES,不能

则打印 NO。

例如 a="pale",b="ple",则输出:YES。

============================================================

第 163 题:DNA 序列


题目描述:众所周知,基因是由 DNA 组成的。而四种核苷酸 A(腺嘌呤),C(胞嘧啶),G(鸟嘌

呤),T(胸腺嘧啶)又是构建 DNA 的基础。在现代计算分子生物学里,寻找 DNA 蛋白质序列

的最长公共子序列问题是这个领域的基本的问题之一。但是本题有所不同。给定几个 DNA

子序列,请找到一个尽可能短的序列,使其能够满足包含所有给定的子序列。比如,给定了

ACGT、ATGC、CGTT 和 CAGT 四个子序列,下图最后一行的 DNA 序列满足题目要求。图中的

序列长度是最短的,但不一定只存在这一种方案。现在给你一个存储所有给定 DNA 子序列

的列表 L(保证 L 中最多不超过 8 个子序列,并且每个子序列长度不超过 5 且所有子序列长度

相同),请你找出满足上述要求的最短子序列,输出其长度(注意只要输出长度即可)。


例如:

L=["ACGT","ATGC","CGTT","CAGT"]则输出:8

============================================================

第 164 题:最长回文子串


题目描述:

给你一个字符串 s(s 长度不超过 1000),请你找出 s 中最长的回文子串(注意不一定是连续

子串),输出其长度。注意,只需要输出最长回文子串的长度即可。

例如:s="mmlam",则输出:3。

Note:"mmlam"的最长回文子串是"mmm",其长度是 3,因此样例应该输出:3

============================================================

第 165 题:表达式运算


题目描述:

现在给你一个正整数 n(0 最少的操作次数。

例如:n=31,则输出 6。



目录
相关文章
|
Python
一起挑战pythontip的题目(34)
一起挑战pythontip的题目(34)
74 0
|
Python
一起挑战pythontip的题目(1)
一起挑战pythontip的题目(1)
95 0
一起挑战pythontip的题目(37)
一起挑战pythontip的题目(37)
73 0
一起挑战pythontip的题目(5)
一起挑战pythontip的题目(5)
61 0
一起挑战pythontip的题目(19)
一起挑战pythontip的题目(19)
51 0
|
机器学习/深度学习
一起挑战pythontip的题目(14)
一起挑战pythontip的题目(14)
52 0
一起挑战pythontip的题目(6)
一起挑战pythontip的题目(6)
40 0
|
Python
一起挑战pythontip的题目(29)
一起挑战pythontip的题目(29)
61 0
一起挑战pythontip的题目(35)
一起挑战pythontip的题目(35)
67 0
|
Python
一起挑战pythontip的题目(17)
一起挑战pythontip的题目(17)
61 0