|
本帖最后由 天降天使 于 2021-11-4 14:16 编辑
输入''得到‘’,我做的是不输入直接回车则输出''
我的思路是:
1、输入的字符去重,得到唯一字符串,如aabaab得到ab,abcabd得到abcd
2、遍历得到的唯一字符串与输入的字符串已经遍历过之后的项开始比较,相同则记录(因为如aabaab去重后得到ab,比较时要得到aab才对),得到基础字符串
3、输入的字符串替换掉基础字符串,如果替换后是空值,那么输出基础字符串,否则输出输入的字符串inp = input('请输入字符:')
if inp: # 判断是否输入了内容
unique = ''
for i in inp: # 按顺序去重,不能用集合,否则不能保留原来的顺序
if i not in unique:
unique += i
if len(unique) == 1: # 如果重复的内容只是一个字符,那就是全重复值如aaa
print(unique)
else:
base_str = ''
for u in unique: # 从输入的字符串开头开始找是否和唯一的值相等,相等则记录
for i in inp[len(base_str):]:
if i == u:
base_str += i
else:
break
if inp.replace(base_str, ''):
print(inp)
else:
print(base_str)
else:
print("\'\'")
|
|