我有一根绳子。我需要替换字符'?‘并找到缺失的字符以使其成为字典序字符串。例如,如果我有字符串"ab“。它的词典编排的值是"aa".Since第一个字符'a‘不同于第二个字符'b’。它给出了输出-1。如果我给出字符串"ta?a“。在此字符串中,如果我替换“?”有了t,它就变成了词典化。它给出了输出"tata“。我给出了输入s和k。k是s长度的一半。请在此代码中帮助我。
s=input()
k=input()
for i in range(k):
if (s[i]>=97) and (s[i]<=123):
if (s[i]==s[i+k]):
continue
else:
s=-1
else:
if(s[i]>=s[i+k]):
s[i+k]=s[i]
else:
s[i]=s[i+k]
return s发布于 2021-04-25 01:35:29
我不完全确定我是否理解你的问题,但这是我的尝试:
s = list(input())
k = int(input())
for i in range(k):
s[i] = s[i+k] if s[i] == '?' else s[i]
s[i+k] = s[i] if s[i+k] == '?' else s[i+k]
print(''.join(s) if s[:k] == s[k:] else -1)对于输入ta?a和2,它将输出tata,对于ab和1,它将输出-1。请注意,第二个参数无论如何都是多余的,因为您说它只有长度的一半。
https://stackoverflow.com/questions/67244176
复制相似问题