Programozás‎ > ‎Feladatok‎ > ‎

Körök pakolása

Egy egységnyi oldalú négyzetbe r sugarú köröket "dobálunk". A dobálás azt jelenti, hogy választunk egy véletlenszerű (x; y) pontot a négyzet belsejében, és ha ezen pont körül rajzolható r sugarú kör, ami nem lóg ki a négyzetből, és nem lóg bele egyik korábban ledobott kör belsejébe sem, akkor letesszük az adott helyre. Ha sikertelen volt a kísérlet (mert az adott középponttal nem fér el kör), akkor újra próbálkozunk, összesen legfeljebb K-szor.

Adott K és r esetén határozzuk meg, hogy várhatóan hány százalékát fedik a körök a négyzetnek. 

Feladat

Írjunk programot, ami elvégez megfelelő számú kísérletet, megadja, hogy átlagosan hány százalék volt a lefedett tartomány.

Bemenet

Az egyetlen bemeneti sor r és K értékét tartalmazza. (0 < r < 1, lebegőpontos; 1<= K <= 1000, egész)

Kimenet

Az első sorba az átlagosan lefedett területarányt kell kiírni, legalább hat tizedes pontossággal. Ráadásként kirajzolhatjuk a véletlen pakolások eredményét is.

Példa

Bemenet  Kimenet
0.65 10
0.5 100
0.2 100
0.000000
0.000000
0.3450097


Tesztadatok

Címkék

A feladat forrása: Czövek Marci feladata
Algoritmusok: véletlen-számok használata, statisztika