gd

Time limit: 1.5s Memory limit: 128MB Input: gd.in Output: gd.out

Axiom Postulates și-a instalat un nou joc și are nevoie de ajutor. Se dă o listă de NN niveluri, fiecare având o lungime lil_i, în secunde, număr natural între 3030 și 300300. De asemenea, fiecare nivel are o dificultate, un alt număr natural did_i, cuprins între 11 și 55. Durata pentru a completa un astfel de nivel este egală cu xidilix_i * d_i * l_i. Inițial, xix_i este egal cu 1010 pentru fiecare nivel.

În acest joc, Axiom are posibilitatea de a juca nivelurile în "Practice Mode". Pentru un nivel ii, durata completării acestuia în "Practice Mode" este egală cu 2li2 * l_i, iar, în urma acesteia, valoarea lui xix_i scade cu 3, dar nu poate deveni mai mică decât 11.

Axiom Postulates se întreabă: dacă poate să se joace în "Practice Mode" de maxim KK ori, care este durata minimă pentru a completa toate nivelurile.

Date de intrare

Fișierul de intrare gd.in conține, pe prima linie, două numere naturale, NN și KK. Pe cea de-a doua linie sunt NN numere naturale, reprezentând lungimile în secunde ale nivelelor, iar, pe a treia linie, alte NN numere naturale, reprezentând dificultățile nivelelor.

Date de ieșire

Fișierul de ieșire gd.out conține un singur număr natural, reprezentând durata minimă pentru a completa toate nivelurile.

Restricții și precizări

  • 1N10 000 0001 \le N \le 10\ 000\ 000
  • 0K30 000 0000 \le K \le 30\ 000\ 000
  • 30li30030 \le l_i \le 300
  • 1di51 \le d_i \le 5
# Puncte Restricții
1 20 K=0K = 0
2 10 K=1K=1
3 20 1N1 0001 \le N \le 1\ 000 și di=1d_i = 1, pentru orice 1iN1 \le i \le N
4 20 di=1d_i = 1, pentru orice 1iN1 \le i \le N
5 30 Fără restricții suplimentare

Exemplul 1

gd.in

4 0
100 200 50 70
1 2 5 2

gd.out

8900

Explicație

Avem K=0K = 0, așadar niciun nivel nu va fi jucat în „Practice Mode”. Toate nivelurile vor fi jucate normal, având coeficientul inițial xi=10x_i = 10. Prin urmare, durata totală pentru a termina toate nivelurile va fi:

101100+102200+10550+10270=1000+4000+2500+1400=8900 secunde.10 \cdot 1 \cdot 100 + 10 \cdot 2 \cdot 200 + 10 \cdot 5 \cdot 50 + 10 \cdot 2 \cdot 70 = 1000 + 4000 + 2500 + 1400 = 8900 \text{ secunde.}

Exemplul 2

gd.in

3 4
150 40 30
1 3 2

gd.out

2310

Explicație

Avem la dispoziție K=4K = 4 exersări în „Practice Mode”. Repartizarea optimă a exersărilor pentru a minimiza timpul, precum și calculul duratelor per nivel, sunt ilustrate în figura de mai jos: N=3,K=4N =3,K =4, rezultat = 23102310 secunde

Nivel l[i] d[i] Practice x[i] final Timp total
Nivel 1 150 1 1(-3) 10-3=7 2150+71150=13502 \cdot 150 + 7 \cdot 1 \cdot 150 = 1350
Nivel 2 40 3 3(-9) 10-9=1 3240+1340=3603 \cdot 2 \cdot 40+1 \cdot 3 \cdot 40 = 360
Nivel 3 30 2 0 10 10230=60010 \cdot 2 \cdot 30 = 600

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