QOJ.ac

QOJ

时间限制: 2 s 内存限制: 1024 MB 总分: 100 可 Hack ✓

#18511. Jabłko i Cynamon

统计

Alice przygotowuje swój popisowy deser, który opiera się na delikatnej harmonii dwóch składników: jabłka i cynamonu. Aby to osiągnąć, Alice sięga do dużego, nieprzezroczystego materiałowego worka wypełnionego kroplami smakowymi.

Wiemy na pewno, że worek zawiera co najmniej $X$ kropli jabłkowych i co najmniej $Y$ kropli cynamonowych. Może jednak być więcej kropli obu smaków.

Spośród wszystkich możliwych ostatecznych liczb kropli jabłkowych i cynamonowych spełniających te dolne ograniczenia, Alice losuje dokładnie dwie krople jednostajnie bez zwracania. Największym marzeniem Alice jest wylosowanie po jednej kropli każdego smaku, aby jabłko i cynamon spotkały się w jednym próbnym deserze. Dlatego Alice chce poznać minimalne możliwe prawdopodobieństwo wylosowania dwóch kropli tego samego smaku.

Wejście

Jedyny wiersz wejścia zawiera dwie liczby całkowite $X$ i $Y$ ($1 \le X,Y \le 10^9$) --- odpowiednio minimalną wymaganą liczbę kropli jabłkowych i cynamonowych w worku.

Wyjście

Wypisz jedną liczbę rzeczywistą --- minimalne możliwe prawdopodobieństwo, że dwie wylosowane krople mają ten sam smak.

Twoja odpowiedź zostanie uznana za poprawną, jeśli jej błąd bezwzględny lub względny nie przekracza $10^{-9}$.

Przykład

Wejście 1

3 5

Wyjście 1

0.44444444444444444444

Wejście 2

1 1

Wyjście 2

0.00000000000000000000

Wejście 3

3971 1368

Wyjście 3

0.49993703563782898879

Uwagi

Dla pierwszego testu, jeśli worek zawiera $a$ kropli jabłkowych i $b$ kropli cynamonowych, prawdopodobieństwo wylosowania dwóch kropli tego samego smaku wynosi $$ \frac{a(a-1)+b(b-1)}{(a+b)(a+b-1)}. $$ Dla $X=3$ i $Y=5$ jednym optymalnym wyborem jest $(a,b)=(4,5)$, co daje $\frac{4\cdot3+5\cdot4}{9\cdot8}=\frac49$.

Dla drugiego testu, gdy $X=Y=1$, Alice może użyć dokładnie jednej kropli każdego smaku. Wtedy każde losowanie dwóch kropli zawiera po jednej kropli każdego smaku, więc prawdopodobieństwo wylosowania dwóch jednakowych smaków wynosi $0$.

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.