<?php
/*
저작권자
-MX패밀리(http://m...content-available-to-author-only...y.ml)
도움
-kmb패밀리
기본구조
배열값을 이용한 확률뽑기(Percent_draw 함수)
각 단계별 Percent_draw 함수의 값이 1이 나오면 랭킹상승 성공,0이 나오면 실패
1 나오면 배열 오른쪽값이고 0이면 왼쪽값이니깐.......
*/
$times=100; //매직브러시 뽑기 횟수
$sum = 0; //매직브러시 뽑는데 사용한 A팔레트 개수의 합
$values_1 = [45,55]; //A아마랭킹 10위 or 5위 확률
$values_2 = [60,40]; //A아마랭킹 5위 or 3위 확률
$values_3 = [67,33]; //A아마랭킹 3위 or 1위 확률
$values_4 = [80,20]; //A아마랭킹 1위 or S프로랭킹 10위 확률
$values_5 = [55,45]; //S아마랭킹 10위 or 5위 확률
$values_6 = [74,26]; //S아마랭킹 5위 or 3위 확률
$values_7 = [89.5,10.5]; //S아마랭킹 3위 or 1위 확률
$values_8 = [95.5,4.5]; //S아마랭킹 1위 or 애직 브러쉬 확률
do{
$i=$i+1; //매직브러시 한번 뽑을때 마다 1추가
//A아마랭킹 10위 or 5위
do{
$index = Percent_draw($values_1,1);
$sum++; //한번 팔레트 썼으니 누적
if($index==1){
break;
}
}while(true);
//A아마랭킹 5위 or 3위
do{
$index = Percent_draw($values_2,1);
$sum++;
if($index==1){
break;
}
}while(true);
//A아마랭킹 3위 or 1위
do{
$index = Percent_draw($values_3,1);
$sum++;
if($index==1){
break;
}
}while(true);
//A아마랭킹 1위 or S프로랭킹 10위
do{
$index = Percent_draw($values_4,1);
$sum++;
if($index==1){
break;
}
}while(true);
//S아마랭킹 10위 or 5위(여기서 부터 팔레트 3개씩 사용)
do{
$index = Percent_draw($values_5,1);
$sum++;
$sum++;
$sum++;
if($index==1){
break;
}
}while(true);
//S아마랭킹 5위 or 3위
do{
$index = Percent_draw($values_6,1);
$sum++;
$sum++;
$sum++;
if($index==1){
break;
}
}while(true);
//S아마랭킹 3위 or 1위
do{
$index = Percent_draw($values_7,1);
$sum++;
$sum++;
$sum++;
if($index==1){
break;
}
}while(true);
//S아마랭킹 1위 or 매직브러시 뽑음 ㅋ
do{
$index = Percent_draw($values_8,1);
$sum++;
$sum++;
$sum++;
if($index==1){
break;
}
}while(true);
}while($i<$times);
echo "매직브러시 ".$i."회 뽑기 평균값 : ".$sum/$i;
function Percent_draw($percent_list,$decimal) {
//$percentlist : 뽑을확률,밑 $contents_list 하고 배열순서에 맞게 넣어야만 함
//$decimal : 확률 소숫점 자리수,자연수면 0 그외 소수면 소수점 자리수에 맞게 넣는다.
$range_now = 0;
$range_last = 0;
for($i=0; $i<count($percent_list); $i++) { $range_now += pow(10,$decimal)*$percent_list[$i]; if($range_now >= $draw && $range_last < $draw) {
return $i;
}else{
$range_last = $range_now;
}
}
}
?>
PD9waHAKLyoK7KCA7J6R6raM7J6QCi1NWO2MqOuwgOumrChodHRwOi8vbS4uLmNvbnRlbnQtYXZhaWxhYmxlLXRvLWF1dGhvci1vbmx5Li4ueS5tbCkK64+E7JuACi1rbWLtjKjrsIDrpqwKIArquLDrs7jqtazsobAK67Cw7Je06rCS7J2EIOydtOyaqe2VnCDtmZXrpaDrvZHquLAoUGVyY2VudF9kcmF3IO2VqOyImCkK6rCBIOuLqOqzhOuzhCBQZXJjZW50X2RyYXcg7ZWo7IiY7J2YIOqwkuydtCAx7J20IOuCmOyYpOuptCDrnq3tgrnsg4Hsirkg7ISx6rO1LDDsnbQg64KY7Jik66m0IOyLpO2MqAoxIOuCmOyYpOuptCDrsLDsl7Qg7Jik66W47Kq96rCS7J206rOgIDDsnbTrqbQg7Jm87Kq96rCS7J2064uI6rmQLi4uLi4uLgoqLwokdGltZXM9MTAwOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL+unpOyngeu4jOufrOyLnCDrvZHquLAg7Zqf7IiYCiRzdW0gPSAwOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy/rp6Tsp4HruIzrn6zsi5wg672R64qU642wIOyCrOyaqe2VnCBB7YyU66CI7Yq4IOqwnOyImOydmCDtlakKJHZhbHVlc18xID0gWzQ1LDU1XTsgICAgICAgICAgICAgICAgICAgIC8vQeyVhOuniOuere2CuSAxMOychCBvciA17JyEIO2ZleuloAokdmFsdWVzXzIgPSBbNjAsNDBdOyAgICAgICAgICAgICAgICAgICAgICAgIC8vQeyVhOuniOuere2CuSA17JyEIG9yIDPsnIQg7ZmV66WgCiR2YWx1ZXNfMyA9IFs2NywzM107ICAgICAgICAgICAgICAgICAgICAgIC8vQeyVhOuniOuere2CuSAz7JyEIG9yIDHsnIQg7ZmV66WgCiR2YWx1ZXNfNCA9IFs4MCwyMF07ICAgICAgICAgICAgICAgICAgICAvL0HslYTrp4jrnq3tgrkgMeychCBvciBT7ZSE66Gc656t7YK5IDEw7JyEIO2ZleuloAokdmFsdWVzXzUgPSBbNTUsNDVdOyAgICAgICAgICAgICAgICAgICAgLy9T7JWE66eI656t7YK5IDEw7JyEIG9yIDXsnIQg7ZmV66WgCiR2YWx1ZXNfNiA9IFs3NCwyNl07ICAgICAgICAgICAgICAgICAgICAvL1PslYTrp4jrnq3tgrkgNeychCBvciAz7JyEIO2ZleuloAokdmFsdWVzXzcgPSBbODkuNSwxMC41XTsgICAgICAgICAgICAgICAgLy9T7JWE66eI656t7YK5IDPsnIQgb3IgMeychCDtmZXrpaAKJHZhbHVlc184ID0gWzk1LjUsNC41XTsgICAgICAgICAgICAgICAgICAgIC8vU+yVhOuniOuere2CuSAx7JyEIG9yIOyVoOyngSDruIzrn6zsiawg7ZmV66WgCmRvewogICAgJGk9JGkrMTsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8v66ek7KeB67iM65+s7IucIO2VnOuyiCDrvZHsnYTrlYwg66eI64ukIDHstpTqsIAKICAgIC8vQeyVhOuniOuere2CuSAxMOychCBvciA17JyECiAgICBkb3sKICAgICAgICAkaW5kZXggPSBQZXJjZW50X2RyYXcoJHZhbHVlc18xLDEpOwogICAgICAgICRzdW0rKzsgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvL+2VnOuyiCDtjJTroIjtirgg7I287Jy864uIIOuIhOyggQogICAgICAgIGlmKCRpbmRleD09MSl7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgIH13aGlsZSh0cnVlKTsKICAgIC8vQeyVhOuniOuere2CuSA17JyEIG9yIDPsnIQKICAgIGRvewogICAgICAgICRpbmRleCA9IFBlcmNlbnRfZHJhdygkdmFsdWVzXzIsMSk7CiAgICAgICAgJHN1bSsrOwogICAgICAgIGlmKCRpbmRleD09MSl7CiAgICAgICAgICAgIGJyZWFrOwogICAgICAgIH0KICAgIH13aGlsZSh0cnVlKTsKICAgICAvL0HslYTrp4jrnq3tgrkgM+ychCBvciAx7JyECiAgICBkb3sKICAgICAgICAkaW5kZXggPSBQZXJjZW50X2RyYXcoJHZhbHVlc18zLDEpOwogICAgICAgICRzdW0rKzsKICAgICAgICBpZigkaW5kZXg9PTEpewogICAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICB9d2hpbGUodHJ1ZSk7CiAgICAgLy9B7JWE66eI656t7YK5IDHsnIQgb3IgU+2UhOuhnOuere2CuSAxMOychAogICAgZG97CiAgICAgICAgJGluZGV4ID0gUGVyY2VudF9kcmF3KCR2YWx1ZXNfNCwxKTsKICAgICAgICAkc3VtKys7CiAgICAgICAgaWYoJGluZGV4PT0xKXsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgfXdoaWxlKHRydWUpOwogICAgIC8vU+yVhOuniOuere2CuSAxMOychCBvciA17JyEKOyXrOq4sOyEnCDrtoDthLAg7YyU66CI7Yq4IDPqsJzslKkg7IKs7JqpKQogICAgZG97CiAgICAgICAgJGluZGV4ID0gUGVyY2VudF9kcmF3KCR2YWx1ZXNfNSwxKTsKICAgICAgICAkc3VtKys7CgkJJHN1bSsrOwoJCSRzdW0rKzsKICAgICAgICBpZigkaW5kZXg9PTEpewogICAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICB9d2hpbGUodHJ1ZSk7CiAgICAgLy9T7JWE66eI656t7YK5IDXsnIQgb3IgM+ychAogICAgZG97CiAgICAgICAgJGluZGV4ID0gUGVyY2VudF9kcmF3KCR2YWx1ZXNfNiwxKTsKICAgICAgICAkc3VtKys7CgkJJHN1bSsrOwoJCSRzdW0rKzsKICAgICAgICBpZigkaW5kZXg9PTEpewogICAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICB9d2hpbGUodHJ1ZSk7CiAgICAgLy9T7JWE66eI656t7YK5IDPsnIQgb3IgMeychAogICAgZG97CiAgICAgICAgJGluZGV4ID0gUGVyY2VudF9kcmF3KCR2YWx1ZXNfNywxKTsKICAgICAgICAkc3VtKys7CgkJJHN1bSsrOwoJCSRzdW0rKzsKICAgICAgICBpZigkaW5kZXg9PTEpewogICAgICAgICAgICBicmVhazsKICAgICAgICB9CiAgICB9d2hpbGUodHJ1ZSk7CiAgICAgLy9T7JWE66eI656t7YK5IDHsnIQgb3Ig66ek7KeB67iM65+s7IucIOu9keydjCDjhYsKICAgIGRvewogICAgICAgICRpbmRleCA9IFBlcmNlbnRfZHJhdygkdmFsdWVzXzgsMSk7CiAgICAgICAgJHN1bSsrOwoJCSRzdW0rKzsKCQkkc3VtKys7CiAgICAgICAgaWYoJGluZGV4PT0xKXsKICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgfQogICAgfXdoaWxlKHRydWUpOwogICAgCn13aGlsZSgkaTwkdGltZXMpOwplY2hvICLrp6Tsp4HruIzrn6zsi5wgIi4kaS4i7ZqMIOu9keq4sCDtj4nqt6DqsJIgOiAiLiRzdW0vJGk7CiAKZnVuY3Rpb24gUGVyY2VudF9kcmF3KCRwZXJjZW50X2xpc3QsJGRlY2ltYWwpIHsKICAgIC8vJHBlcmNlbnRsaXN0IDog672R7J2E7ZmV66WgLOuwkSAkY29udGVudHNfbGlzdCDtlZjqs6Ag67Cw7Je07Iic7ISc7JeQIOunnuqyjCDrhKPslrTslbzrp4wg7ZWoCiAgICAvLyRkZWNpbWFsIDog7ZmV66WgIOyGjOyIq+ygkCDsnpDrpqzsiJgs7J6Q7Jew7IiY66m0IDAg6re47Jm4IOyGjOyImOuptCDshozsiJjsoJAg7J6Q66as7IiY7JeQIOunnuqyjCDrhKPripTri6QuCiAgICAkcmFuZ2Vfbm93ID0gMDsKICAgICRyYW5nZV9sYXN0ID0gMDsKICAgICRkcmF3ID0gcmFuZCgxLHBvdygxMCwkZGVjaW1hbCkqYXJyYXlfc3VtKCRwZXJjZW50X2xpc3QpKTsKICAgIGZvcigkaT0wOyAkaTxjb3VudCgkcGVyY2VudF9saXN0KTsgJGkrKykgewogICAgICAgICRyYW5nZV9ub3cgKz0gcG93KDEwLCRkZWNpbWFsKSokcGVyY2VudF9saXN0WyRpXTsKICAgICAgICBpZigkcmFuZ2Vfbm93ID49ICRkcmF3ICYmICRyYW5nZV9sYXN0IDwgJGRyYXcpIHsKICAgICAgICAgICAgcmV0dXJuICRpOwogICAgICAgIH1lbHNlewogICAgICAgICAgICAkcmFuZ2VfbGFzdCA9ICRyYW5nZV9ub3c7CiAgICAgICAgfQogICAgfQp9Cj8+