CSES - Laudat
  • Time limit: 1.00 s
  • Memory limit: 512 MB

Sinulla on lauta, jonka pituus on xx. Haluat jakaa sen nn laudaksi, joiden pituudet ovat p1,p2,,pnp_1,p_2,\ldots,p_n.

Jokaisella vuorolla voit valita minkä tahansa laudan ja jakaa sen kahteen osaan haluamallasi tavalla. Tällaisen jaon kustannus on laudan pituus ennen jakoa.

Mikä on pienin mahdollinen kaikkien kustannusten summa?

Syöte

Syötteen ensimmäisellä rivillä on kaksi kokonaislukua xx ja nn: alkuperäisen laudan pituus ja haluttujen lautojen määrä.

Seuraavalla rivillä on nn kokonaislukua p1,p2,,pnp_1,p_2,\ldots,p_n: halutut pituudet.

Tuloste

Tulosta yksi kokonaisluku: pienin kokonaiskustannus.

Rajat

  • 1x1091 \le x \le 10^9
  • 1n51051 \le n \le 5 \cdot 10^5
  • pi>=1p_i >= 1
  • p1+p2++pn=xp_1+p_2+\ldots+p_n=x

Esimerkki

Syöte:

8 3
2 3 3

Tuloste:

13

Selitys: Alussa laudat ovat [8][8]. Jaat 88:n pituisen laudan osiin 3+5=83+5=8 (kustannus 88), minkä jälkeen laudat ovat [3,5][3,5]. Sitten jaat 55:n pituisen laudan osiin 2+3=52+3=5 (kustannus 55), minkä jälkeen laudat ovat [2,3,3][2,3,3].