CSES - Osajonot

Merkkijonon osajono on mikä tahansa merkkijonon osana oleva yhtenäinen merkkijono. Esimerkiksi merkkijonon abc osajonot ovat a, b, c, ab, bc ja abc.

Tehtäväsi on laskea, montako erilaista osajonoa annetussa merkkijonossa on. Merkkijono muodostuu merkeistä az ja siinä on enintään 100 merkkiä.

Python

Toteuta tiedostoon substrings.py funktio count, joka antaa erilaisten osajonojen määrän.

def count(s):
    # TODO

if __name__ == "__main__":
    print(count("aaa")) # 3
    print(count("abc")) # 6
    print(count("saippuakauppias")) # 110

Java

Toteuta tiedostoon Substrings.java metodi count, joka antaa erilaisten osajonojen määrän.

public class Substrings {
    public int count(String s) {
        // TODO
    }

    public static void main(String[] args) {
        Substrings s = new Substrings();
        System.out.println(s.count("aaa")); // 3
        System.out.println(s.count("abc")); // 6
        System.out.println(s.count("saippuakauppias")); // 110
    }
}