为什么我的代码在这种特定情况下不起作用?(Python 3)

ni65a41a  于 2023-08-08  发布在  Python
关注(0)|答案(1)|浏览(125)

所以我试图解决这个特定的CSES练习,在9和10测试中,我的代码没有给予正确的数字,我不知道为什么。enter image description here
下面是练习的链接:https://cses.fi/problemset/task/1069
下面是我的代码(Python 3):

count = 1
s = 1
longest_count = 1
input = input()

characters = []
for char in input :
    characters.append(char)

x = len(characters)

n = 0

while n < x - 1 :
    if characters[n] == characters[n+1]:
        count = count + 1
    elif s < count :

        s = count
        count = 1

    n = n + 1
    
if count < s : 
    print(s)
else : 
    print(count)

字符串
我已经尝试了很多东西,但都没有为我工作,这里是我的代码输出和正确的输出截图:enter image description here

zpf6vheq

zpf6vheq1#

每次序列改变时,您需要执行“count = 1”。这意味着其他需要更复杂一点:

for n in range(x-1):
    if characters[n] == characters[n+1]:
        count += 1
    else:
        if s < count:
            s = count
        count = 1

字符串
或者:

else:
        s = max(s, count)
        count = 1

print(max(s,count))

相关问题