寻找蛇形字符串python实现
输入一个字符串(不含空格),请寻找输入中包含的所有蛇形字符串。
1. 蛇形字符串的定义:
1.1 字符对定义:字符对有同一字母的大小组成(前大后小),如:Aa,Dd。
1.2 蛇形字符串中包含的字符对必须是连续的字母,并按照字母排序表排序,如:AaBbCc。
2. 从输入字符串中寻找字符组成蛇形字符串(字符顺序不限),符合规则:
2.1 每次寻找最长的蛇形字符串。
2.2 使用过的字符不能重复使用。
3. 输出按首字母排序,如果首字母相同则按长度排序。
def run():string = input()out_ls = []while True:char_ls = [x for x in string if ('A'<=x<='Z') and (x.lower() in string)]if len(char_ls)==0:breakselect_ls = list(set(char_ls))loc_ls = ['_']*26for x in select_ls:loc_ls[ord(x)-ord('A')] = xloc_str = ''.join(loc_ls)item_ls = loc_str.split('_')item_ls = sorted(item_ls, key=lambda x: len(x))out_ls.append(item_ls[-1])string_ls = [x for x in string]for x in item_ls[-1]:string_ls.remove(x)string_ls.remove(x.lower())string = ''.join(string_ls)if len(out_ls)==0:print('Not Found')else:out_ls = sorted(out_ls, key=lambda x: len(x), reverse=True)out_ls = sorted(out_ls, key=lambda x: x[0])for x in out_ls:for xx in x:print(xx+xx.lower(), end='')print()
run()
测试一
输入:SxxsrR^AaSs
输出:
Aa
RrSs
Ss
测试二
输入:SwSE$345456DD$$#E#eswsxxsssAAWDxxdderfvcRFER65645g^^%%^UnbnvccTRChnyvcxcvVCFR
输出:
CcDdEeFf
CcDdEe
RrSs
Ss
VvWw
寻找蛇形字符串python实现相关推荐
- 华为蛇形字符串python
华为蛇形字符串python 题目内容点击这里 我的python3解答:注意如何循环地获取一个字符串中的最长字符 from collections import Counter while True:t ...
- 寻找一个字符串的重复子串 后缀数组
什么是后缀数组 令字符串 S=S[1]S[2]...S[n]S=S[1]S[2]...S[n]{\displaystyle S=S[1]S[2]...S[n]} , S[i,j]S[i,j]{\dis ...
- 华为机试-蛇形字符串
题目描述: 输入一个字符串(不含空格), 请寻找输入中包含所有蛇形字符串. 蛇形字符串定义: 1.蛇形字符串由连续字符对组成,其特点如下: 1.1 字符对定义:字符对由同一字母的大写和小写组成(前大后 ...
- python的数值可以转换为字符串_python 数值转换为字符串Python对HTML转义字符进行反转义...
什么是转义字符 在 HTML 中 .& 等字符有特殊含义( 用于标签中,& 用于转义),他们不能在 HTML 代码中直接使用,如果要在网页中显示这些符号,就需要使用 HTML 的转义字 ...
- python求列表最大值下标_切片,丝滑的字符串 | Python基础连载(三)
开篇 之前已经提到过,在Python中,一共有六大数据类型 本期就开始学习Python的六个标准数据类型中的字符串. 什么是字符串 在Python中,字符串是用一对引号(单引号/双引号均可)包裹起来的 ...
- 从入门到入土:Python实现爬取某站视频|根据视频编号|支持通过视频名称和创作者名称寻找编号|以及python moviepy合并音频视频
写在前面: 此博客仅用于记录个人学习进度,学识浅薄,若有错误观点欢迎评论区指出.欢迎各位前来交流.(部分材料来源网络,若有侵权,立即删除) Python实现爬取某站视频|根据视频编号|支持通过视频名称 ...
- leetcode28 Implement strStr() 在字符串中寻找目标字符串
题目要求: 在子字符串中寻找目标字符串,并返回该字符串第一次出现时的下标 在尝试的写了一提中等难度的题目后,又一次回到简单难度的题寻找温暖T-T 思路一 在原字符串中中寻找目标字符串首字母的下标,并提 ...
- 蛇形字符串、驼峰字符串转换
转换为蛇形字符串,例如: XxYy to xx_yy , XxYY to xx_yy // snake string, XxYy to xx_yy , XxYY to xx_yy func snake ...
- 算法设计 - 寻找一个字符串的重复子串LRS
虽是读书笔记,但是如转载请注明出处 http://segmentfault.com/blog/exploring/ .. 拒绝伸手复制党 问题描述: 首先这是一个单字符串问题.子字符串 R 在字符串 ...
最新文章
- BZOJ 4817: [Sdoi2017]树点涂色(LCT+树剖+线段树)
- js mysql替换_JavaScript_js使用正则实现ReplaceAll全部替换的方法,JS 字符串有replace() 方法。但这 - phpStudy...
- HPU暑期第五次积分赛 F - 辞树的质因数分解
- react实战课程_在使用React一年后,我学到的最重要的课程
- MATLAB GUI如何创建Callback函数
- 亮度 调整_摄影后期必备!如何用亮度蒙版技术精准调整照片影调
- php程序如何加密(php_screw)
- 文章读后感--社会文明分析总结
- 《A First Course in Probability》-chaper3-条件概率和独立性-贝叶斯公式、全概率公式...
- 15. module create
- FMRI数据分析与处理
- 董明珠下台 格力还能一统智能家居吗?
- jqwidgets日历插件如何改为中文版24小时制和bootstrap的日期控件如何改成24小时制
- 学习云计算前景如何?云计算成为获取人工智能主要途径
- 最全面的文本生成评价指标大盘点
- AD元件库构建及维护之——DbLib公共元件库的使用教程
- php md5算法,php如何实现md5算法?
- 程序员眼中看到的网页是如何制作出来的?
- for循环(循环结构)
- Java设计模式系列--观察者模式(使用)