Tehtäväsi on laskea, montako erilaista osajonoa annetussa merkkijonossa on.
Esimerkiksi merkkijonossa abab erilaiset osajonot ovat a, b, ab, ba, aba, bab ja abab, joten haluttu vastaus on 7.
Toteuta tiedostoon substrings.py funktio count_substrings, joka laskee parametrina annetun merkkijonojen erilaisten osajonojen määrän.
Funktiota testataan eri tilanteissa, joissa merkkijonon pituus on enintään 20 merkkiä ja se muodostuu merkeistä a–z. Funktion tulee toimia tehokkaasti kaikissa tällaisissa tapauksissa.
def count_substrings(string):
# TODO
if __name__ == "__main__":
print(count_substrings("aaaa")) # 4
print(count_substrings("abab")) # 7
print(count_substrings("abcd")) # 10
print(count_substrings("abbbbbb")) # 13
print(count_substrings("aybabtu")) # 26
print(count_substrings("saippuakauppias")) # 110
