panouri

Time limit: 0.1s Memory limit: 16MB Input: panouri.in Output: panouri.out

Pe autostrada “Soarele Estului“ sunt aşezate de-a lungul şoselei, la distanţe egale, panouri publicitare ale unor firme. Aceeaşi firmă, poate să aibă mai multe panouri publicitare şi fiecare panou poate să apară în mai multe locuri. Panourile se identifică prin numere naturale, numărul total de panouri fiind NN. Firma “X Corporation” are panouri de TT tipuri diferite. Firma a primit aprobarea construirii unui mare complex turistic în apropierea autostrăzii; de aceea, pentru alegerea locului, este interesată şi de următorul aspect: care este lungimea minimă de şosea, în care se pot întâlni, toate cele TT tipuri de panouri publicitare ale firmei, indiferent de ordinea acestora, şi indiferent dacă între ele se mai interpun sau nu panouri ale altor firme.

Cerinţă

Cunoscând NN - numărul total de panouri de la marginea autostrăzii şi ordinea amplasării lor, ca şi cele TT tipuri de panouri amplasate de firmă, determinaţi numărul minim de intervale dintre două panouri între care firma “X Corporation” îşi regăseşte toate panourile sale.

Date de intrare

Fişierul de intrare panouri.in are pe prima linie numerele NN şi TT. Pe următoarele NN linii, sunt NN numere naturale, nu neaparat diferite, câte unul pe linie, reprezentînd panourile, iar începând cu linia N+2N + 2, câte unul pe linie, cele TT tipuri de panouri diferite al firmei.

Date de ieșire

Fişierul de ieşire panouri.out va conţine pe prima linie un singur număr întreg pozitiv LL, reprezentând numărul cerut, sau 1-1 în caz că nu există soluţie.

Restricții și precizări

  • 1N15 0001 \leq N \leq 15 \ 000;
  • 1T1 0001 \leq T \leq 1 \ 000;
  • Toate numerele reprezentând panouri sunt numere naturale din intervalul [11000][1 \dots 1000].

Exemplul 1

panouri.in

6 2
1
2
3
5
3
1
5
1

panouri.out

2

Explicație

Sunt NN = 66 panouri: 1 2 3 5 3 11 \ 2 \ 3 \ 5 \ 3 \ 1. Firma are TT = 22 tipuri de panouri: 55 şi 11.
Cel mai scurt interval care conţine elementele 55 şi 11, este între panourile al 44-lea şi al 66-lea, şi conţine 22 intervale.

Exemplul 2

panouri.in

8 3
5
1
3
3
5
4
2
1
3
1
4 

panouri.out

4

Explicație

Sunt NN = 88 panouri de tipurile: 5 1 3 3 5 4 2 15 \ 1 \ 3 \ 3 \ 5 \ 4 \ 2 \ 1. Firma are TT = 33 tipuri de panouri: 33, 11 şi 44.
Cel mai scurt interval care conţine elementele 11, 33 şi 44, este între al 22-lea şi al 66-lea panou, şi conţine 44 intervale.

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