Diferente pentru problema/swaps intre reviziile #2 si #21

Nu exista diferente intre titluri.

Diferente intre continut:

== include(page="template/taskheader" task_id="swaps") ==
Poveste şi cerinţă...
Definim functia $f(N, P, A, B)$ ca fiind probabilitatea ca numarul $A$ sa ajunga pe pozitia $B$ dupa efectuarea a $P$ interschimbari aleatoare de cate doua numere asupra permutarii identice de lungime $N$. De exemplu, $f(3, 1, 1, 2)$ este egal cu $0.(2)$, deoarece avem $9$ posibilitati de alegere a pozitiilor interschimbate, $(1, 1), (1, 2), (1, 3), (2, 1), (2, 2), (2, 3), (3, 1), (3, 2), (3, 3)$, dintre care doar doua produc rezultatul dorit $((1, 2)$ si $(2, 1))$.
 
Dandu-se $T$ teste de forma $N P A B$, sa se calculeze pentru fiecare dintre acestea $f(N, P, A, B)$.
h2. Date de intrare
Fişierul de intrare $swaps.in$ ...
Fişierul de intrare $swaps.in$ va contine pe prima linie numarul natural $T$. Urmatoarele $T$ linii vor fi de forma $N P A B$, cu semnificatia din enunt.
h2. Date de ieşire
În fişierul de ieşire $swaps.out$ ...
În fişierul de ieşire $swaps.out$ se vor afla raspunsurile la cele $T$ intrebari, pe linii diferite.
h2. Restricţii
* $... ≤ ... ≤ ...$
* $1 ≤ N ≤ 1.000.000$
* $1 ≤ A, B ≤ N$
* $1 ≤ P ≤ 1.000.000$
* $1 ≤ T ≤ 100.000$
* Rezultatele se vor afisa cu o precizie de $10^-9^$
* $A$ si $B$ pot sa fie si egale.
* In cazul in care pozitiile alese pentru interschimbare sunt identice, permutarea va ramane la fel pentru pasul urmator.
* Pentru 20% din teste, $T ≤ 20, N ≤ 100$ si $P ≤ 100$.
* Pentru alte 20% din teste, $T ≤ 20 si P ≤ 100.000$.
h2. Exemplu
table(example). |_. swaps.in |_. swaps.out |
| This is some
  text written on
  multiple lines.
| This is another
  text written on
  multiple lines.
| 3
6 3 1 4
6 4 1 1
3 3 2 3
| 0.117283951
0.331275720
0.320987654
|
h3. Explicaţie
 
...
 
== include(page="template/taskfooter" task_id="swaps") ==
 
== include(page="template/taskfooter" task_id="swaps") ==

Nu exista diferente intre securitate.

Diferente intre topic forum:

 
7311