holo

In anul 2115, in gradina din fata Liceului de Informatica din Iasi a fost inaugurata aleea programatorilor, o alee circulara pe care sunt plasate, la egala distanta, holograme ale programatorilor celebri absolventi ai acestui liceu. La inaugurare au fost amplasate pe alee (precizam: la egala distanta) n holograme.
Intre timp au fost realizate alte m holograme si trebuie amplasate pe alee (in orice pozitie dorim). Pentru a conserva valoarea estetica a acestui ansamblu, hologramele mai vechi pot fi deplasate de-a lungul aleii, astfel incat cele n+m holograme sa fie plasate in final pe alee la egala distanta.
Deoarece echipamentul holografic este foarte greu, rearanjarea ansamblului holografic trebuie realizata deplasand vechile holograme cat mai putin posibil.

Cerinta
Scrieti un program care sa determine suma minima a distantelor pe care au fost deplasate de-a lungul aleii cele n holograme vechi pentru a obtine un ansamblu holografic cu n+m holograme situate la egala distanta.

Date de intrare
Fisierul de intrare holo.in contine pe prima linie numerele naturale n si m, separate printr-un spatiu, cu semnificatia din enunt.

Date de iesire
Fisierul de iesire holo.out va contine o singura linie pe care va fi scris un singur numar real ce reprezinta suma minima a distantelor pe care au fost deplasate de-a lungul aleii cele n holograme vechi pentru a obtine un ansamblu holografic cu n+m holograme situate la egala distanta.

Restrictii
2 <= n <= 1000
1 <= m<= 1000

Aleea are o lungime de 10000 de metri.
Rezultatul va fi considerat corect daca diferenta in valoare absoluta dintre rezultatul afisat si cel corect este <=0.001.

Exemple

holo.in holo.out holo.in holo.out Explicatie

2 1

1666.6667
2 3
1000.0

Imaginile ilustreaza cele doua exemple:

Timp maxim de executie/test: 0.1 secunde

prof. Marinel Serban
Liceul de Informatica "Grigore Moisil" Iasi
Contact:marinel_serban@yahoo.com