Python:如何优化

2024-10-02 20:36:39 发布

您现在位置:Python中文网/ 问答频道 /正文

假设给我一个lenn的字符串,对于第一个和最后一个字符相同的每个子字符串,我应该向fx添加1,并打印最后的fx。你知道吗

例如"ababaca" , f("a")=1 , f("aba")=1 , f("abaca")=1,但是f("ab")=0

n = int(raw_input())
string = list(raw_input())
f = 0
for i in range(n):
    for j in range(n,i,-1):
        temp = string[i:j]
        if temp[0]==temp[-1]:
            f+=1
print f

有没有什么方法可以优化我的代码为大字符串,因为我得到了很多测试用例的时间。你知道吗


Tags: 字符串inforinputstringrawabrange
1条回答
网友
1楼 · 发布于 2024-10-02 20:36:39

你只需数一数每个字母的出现次数。例如,如果有n个“a”,则字符串中将有n*(n-1)/2个子字符串以“a”开头和结尾。你可以对每个字母做同样的处理,解是线性的。你知道吗

len(string)添加到最终答案的获得值。你知道吗

相关问题 更多 >