Module: Hash


Problem

1/2

Hash: Inizio (C++)

Theory Click to read/hide

Per risolverlo è conveniente utilizzare una funzione hash che restituisce un valore univoco per ogni riga (hash).
C++11 ha una funzione integrata per ottenere un hash: hash.  
In futuro, per contare il numero di hash, è meglio utilizzare la tabella hash unordered_map, che è apparsa anche in C++ 11. Puoi saperne di più sull'utilizzo di map nel corso Dynamic data structure -> Array associativi: map.

Un esempio di come ottenere un hash dalla stringa "test":

hash<stringa> hash_fn;
size_t str_hash = hash_fn("test" );
cout<<str_hash;


Il risultato sarà: "2949673445", quindi da ogni stringa univoca puoi ottenere un hash univoco che può essere utilizzato come chiave nella  unordered_map.

Problem

Dati N righe. Stampa il numero di righe univoche.

 

Esempi
# Input Uscita
1 3
prova
test2
prova
2
2 4
1prova
prova
test1
prova
3