import sys
n=1
word=""
for line in sys.stdin:
    if n == 1:
        word=line.lower()
        n=n+1
    else:
        print(word.count(str(line.split()[0]).lower()))

本着能用现成的就不重复造轮子,虽然多层函数嵌套,但代码没有循环,算法复杂度应该还是O(n)吧,函数嵌套理论上python内部是分开执行的,不然这语言效率可用性太低了,对不会是n*n,相信他。