Sorti

Time limit: 2s Memory limit: 1.5MB Input: sorti.in Output: sorti.out

Vila Elena, furnizorul principal de mâncare al liceului Radu Greceanu, se confruntă cu o creștere semnificativă a cererii pentru grătar la 7 lei odată cu implementarea serviciului de livrare la bancă. Pentru a gestiona eficient acest volum crescut de comenzi, s-a dezvoltat un algoritm de planificare a livrărilor.

În fiecare pauză este generată aleator o secvență de NN litere. Literele sunt repartizate în mod consecutiv fiecărei dintre cele CC comenzi. De exemplu, pentru 44 comenzi și o secvență de 1212 litere, prima comandă va fi asociată cu literele de pe pozițiile 11, 55 și 99, a doua comandă cu literele de pe pozițiile 22, 66 și 1010, etc.

Livrările sunt organizate în grupuri pe baza literelor asociate comenzilor. Astfel, toate comenzile asociate aceluiași multiset de litere (mulțime în care elementele pot apărea de mai multe ori, fără a ține cont de ordine) vor fi livrate împreună în aceeași tură. Mai mult, comanda 11 și celelalte comenzi cu aceleași litere ca și comanda 11 primesc prioritate și sunt livrate în etapa inițială a planificării.

Cerință

Implementați algoritmul de planificare al livrărilor pentru a furniza următoarele date angajaților de la Vila Elena:

  • Câte comenzi sunt prioritare?
  • Câte ture de livrare trebuie făcute?

Date de intrare

Pe prima linie a fișierului de intrare sorti.in se găsesc două numere naturale NN și CC, reprezentând lungimea secvenței de litere și numărul de comenzi.

Pe a doua linie se găsește o secvență de NN litere.

Date de ieșire

Pe prima linie a fișierului de ieșire sorti.out se va găsi un singur număr întreg, numărul de comenzi prioritare. Pe a doua linie se va găsi numărul de ture de livrare.

Restricții și precizări

  • 1N200 0001 \leq N \leq 200\ 000;
  • Fiecare comandă are asociate maxim 1212 litere;
  • NN este un multiplu al lui CC;
  • Literele asociate comenzilor sunt majuscule de la A la Z;
  • Răspunsurile corecte la prima întrebare valorează 30% din punctajul problemei.
  • În cazul în care răspundeți la o singură întrebare, afișați -1 pe linia corespunzătoare celeilalte întrebări.

Exemplu

sorti.in

9 3
ABCCEDDQA

sorti.out

2
2

Explicație

Cele trei comenzi au următoarele litere asociate: ACD, BEQ, CDA. Prima și ultima comandă au aceeași mulțime de litere, deci se livrează prioritar. Sunt două ture de livrare: pentru comenzile ACD și pentru cele BEQ.

Log in or sign up to be able to send submissions!