Fişierul intrare/ieşire:unic.in, unic.outSursăConcurs clasa a 9-a
AutorDin FolclorAdăugată deteodor94Teodor Plop teodor94
Timp execuţie pe test0.1 secLimită de memorie4096 kbytes
Scorul tăuN/ADificultatenormalnormalnormalnormalnormal

Vezi solutiile trimise

Unique Characters

Definim funcţia:

  • UNIC (S) = Numărul de caractere diferite unice din şirul de caractere S.

De exemplu, UNIC ("abc") = 3, UNIC ("aba") = 1, UNIC ("abac") = 2.

Se dă un şir S de caractere format din litere mici şi litere mari ale alfabetului englez. Să se calculeze sumă din UNIC (K), unde K este subsecvenţă a şirului S.

Date de intrare

Fişierul de intrare unic.in conţine pe prima linie şirul S de caractere.

Date de ieşire

Fişierul de ieşire unic.out conţine pe prima linie un singur număr natural, reprezentând suma cerută.

Restricţii

  • 1 ≤ |S| ≤ 1.000.000, unde |S| este lungimea şirului
  • Pentru 50% din teste, 1 ≤ |S| ≤ 1.000
  • Şirul este format doar din litere mici şi litere mari ale alfabetului englez

Exemplu

unic.inunic.outExplicaţie
abc
10
UNIC ("a") = 1, UNIC ("b") = 1, UNIC ("c") = 1, UNIC ("ab") = 2, UNIC ("bc") = 2, UNIC ("abc") = 3
aba
8
UNIC ("a") = 1, UNIC ("b") = 1, UNIC ("a") = 1, UNIC ("ab") = 2, UNIC ("ba") = 2, UNIC ("aba") = 1 ('a' nu este unic)
Aba
10
UNIC ("A") = 1, UNIC ("b") = 1, UNIC ("a") = 1, UNIC ("Ab") = 2, UNIC ("ba") = 2, UNIC ("Aba") = 3
Trebuie sa te autentifici pentru a trimite solutii. Click aici