微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

词典编纂价值

如何解决词典编纂价值

我有一个字符串。我需要替换字符“?”并找到丢失的字符以使其成为字典字符串。例如 - 如果我有字符串“ab”。它的字典值是“aa”。因为第一个字符 '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

解决方法

我不完全确定我理解你的问题,但这是我的尝试:

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?a2,它将输出 tata,对于 ab1,它将输出 -1。请注意,第二个参数无论如何都是多余的,因为您说它只是长度的一半。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。