Time limit: 0.4s
Memory limit: 256MB
Input: egale.in
Output: egale.out
Pe un șir de numere naturale poți aplica două tipuri de operații:
Alegi două numere cu și fiecare valoare de la la devine .
Alegi două numere cu și aduni la fiecare valoare de la la .
De exemplu, dacă începem cu șirul . Am putea, de exemplu, să aplicăm următoarea secvență de operații:
- Aplicăm operația pentru . .
- Aplicăm operația pentru . .
- Aplicăm operația pentru . .
- Aplicăm operația pentru . .
Cerință
Se dă și un șir de numere naturale. Se dau interogări de forma . Care e numărul minim de operații pe care trebuie să le faci astfel încât . După fiecare interogare, șirul se va reseta la cel inițial.
Date de intrare
Pe prima linie a fișierului de intrare egale.in
se găsesc două numere întregi, și . Pe a doua linie se află șirul de numere naturale. Pe următoarele linii se află câte o tripletă .
Date de ieșire
Pentru fiecare de la la , pe a -a linie a fișierului de ieșire egale.out
se va găsi un singur număr întreg, răspunsul la cea de-a -a întrebare.
Restricții și precizări
- pentru fiecare de la la
- și pentru fiecare interogare.
# | Punctaj | Restricții |
---|---|---|
1 | 10 | pentru fiecare interogare și |
2 | 15 | pentru fiecare interogare |
3 | 19 | |
4 | 12 | |
5 | 25 | |
6 | 19 | Fără alte restricții |
Exemplul 1
egale.in
11 5
1 2 1 2 1 0 5 2 3 1 6
1 4 1
1 4 2
1 11 0
1 11 4
6 9 5
egale.out
2
2
1
5
6
Explicație
Pentru prima interogare, trebuie să aflăm numărul minim de operații să facem toate elementele din șirul egale cu . Singurul mod în care putem face acest lucru în operații este să aplicăm operația pe tot șirul, după operația pe tot șirul.
Exemplul 2
egale.in
10 10
3 2 9 4 10 9 1 0 8 6
3 3 7
4 5 9
5 8 9
1 6 3
5 5 7
3 10 2
3 4 1
7 8 5
3 8 10
4 7 1
egale.out
8
10
10
4
8
3
2
5
11
2
Exemplul 3
egale.in
5 4
0 1 0 0 1
1 1 0
1 2 0
1 3 0
3 4 0
egale.out
0
1
1
0
Explicație
Acest exemplu, verifică pentru fiecare interogare.
La prima interogare, deja toate elemenetele sunt , deci nu mai trebuie să facem alte operații.
La a doua interogare, putem face operația pe intervalul .