Oyunu ehtimal nəzəriyyəsi baxımından nəzərdən keçirək:
Hər zər atışı digərindən müstəqildir;
Bir atışda udma ehtimalı -dir;
Bir atışda uduzma ehtimalı 1 - p-dir;
Oyunçular növbə ilə gedir: 1, 2, ..., n, 1, 2, ...;
Oyun dərhal, kimsə udduqda bitir.
Bizə -ci oyunçunun udma ehtimalı maraqlıdır.
–ci oyunçunun udması o deməkdir ki:
onun udma atışına qədər heç kim udmayıb;
onun növbəsində udma hadisəsi baş verib.
Bununla -ci oyunçu uda bilər:
birinci atışında;
ikinci atışında;
üçüncü atışında;
və s.
Yekun ehtimal bütün bu halların ehtimallarının cəminə bərabərdir.
–ci oyunçunun ilk növbəsində udması üçün iki şərt yerinə yetirilməlidir:
İlk i - 1 oyunçular uduzublar. Hadisənin ehtimalı (1 - p)^{i - 1}
-ci oyunçu uddu. Hadisənin ehtimalı -dir.
Çünki hadisələr müstəqildir, –ci oyunçunun ilk növbəsində udma ehtimalı aşağıdakı kimidir:
-ci oyunçu ikinci növbəsində udacaq, əgər:
Bütün oyunçu bir atış edərək uduzublar: (1 - p)^n
İkinci dövrədə ilk i - 1 oyunçular yenidən uduzublar. Hadisənin ehtimalı (1 - p)^{i - 1}-dir.
-ci oyunçu uddu. Hadisənin ehtimalı -dir.
Вероятность для -го игрока выиграть на своём втором ходе равна
Eyni şəkildə davranaraq, biz –ci oyunçunun –nci növbəsində udma ehtimalını əldə edirik:
İndi əldə etdiyimiz ehtimalları toplamalıyıq. Ümumi -ci oyunçunun udma ehtimalı bərabərdir:
Möhtəvilərin içində ilk üzvü və (1 - p)^n məxrəci olan sonsuz həndəsi silsilə var. Udma ehtimalı bərabərdir:
Xüsusi qeyd edilməlidir ki, p = 0 olduqda cavab -a bərabərdir.
Alqoritmin tətbiqi
Giriş məlumatlarını oxuyuruq.
scanf("%d",&t);
while(t--)
{
scanf("%d %lf %d",&n,&p,&i);Əgər ehtimalı -a bərabərdirsə, çap edirik.
if (p == 0) printf("0\n");
else
{Əksinə, yuxarıda göstərilmiş formulaya görə axtarılan ehtimalı hesablayırıq. Nəticəni 4 onluq dəqiqliklə çap edirik.
res = p * pow(1 - p,i - 1) / (1 - pow(1 - p,n));
printf("%.4lf\n",res);
}
}