ডাই ঢালাই হয়

\(5\) সমান সংখ্যার ফলে একটি কৌশল হয়। যাইহোক, এটি কতটা সম্ভব তা নির্ভর করে আপনি চেষ্টা হিসাবে যা গণনা করেন তার উপর: \(5\) ডাইসের একটি একক রোল বা একটি সম্পূর্ণ পালা যেখানে আপনি ডাইস মেলে এবং সেগুলিকে \(2\) বার পর্যন্ত পুনরায় রোল করুন৷ এখানে আমরা \(5\) সংখ্যার সাথে \(1\) থেকে \(6\) এবং স্বাধীন ফলাফল ব্যবহার করি। প্রতিটি কৌতুক সাফল্য হিসাবে গণনা করা হয়; আপনি যে সম্ভাবনাটি খুঁজছেন তা নির্দিষ্ট সংখ্যক পয়েন্টের মধ্যে সীমাবদ্ধ নয় যেমন \(6\) ।


গেমের নির্দেশাবলী অনুসারে, আপনি প্রতিটি অতিরিক্ত রোলের আগে আবার সিদ্ধান্ত নিতে পারেন যে কোন ডাইসটি পড়ে আছে। আমাদের একমাত্র লক্ষ্য হল এক ধরনের কৌশল, একটি খেলার সেরা সামগ্রিক স্কোর নয়। পাশাকে আলাদা করার সময় একটি একক রোলের \(6^5=7776\) সমান সম্ভাবনা রয়েছে। এর মধ্যে \(6\) সমস্ত পাশায় একই সংখ্যা দেখায়। তাই সুযোগ হল \(\frac{6}{7776}=\frac{1}{1296}\) । যত তাড়াতাড়ি একটি কৌশল পৌঁছেছে, আপনি পদক্ষেপ শেষ; মোট, সর্বাধিক \(3\) নিক্ষেপ অনুমোদিত।

$$p_1=\frac{6}{6^5}=\frac{1}{1296}\approx0{,}07716\%.$$

সবচেয়ে তুচ্ছ কৌশলটিও সর্বোত্তম: আপনি যদি সুযোগটি সর্বাধিক করতে চান তবে আপনি অভিন্ন সংখ্যার বৃহত্তম গ্রুপটি রাখুন। লক্ষ্য সংখ্যাটিও পরিবর্তিত হতে পারে: \((2,2,3,4,5)\) থেকে আপনি প্রথমে দুটি রাখুন \(2\) । যদি পরবর্তী রোলটি \((6,6,6)\) প্রদান করে, আপনি এই গ্রুপটিকে রাখুন এবং দুটিকে পুনরায় রোল করুন \(2\) । শেষ সুযোগ \(\frac{1}{216}\) থেকে \(\frac{1}{36}\) পর্যন্ত বৃদ্ধি পায়। এবং শেষ কিন্তু অন্তত নয়, ধরা যাক: একটি কৌশল অবিলম্বে পর্বটি শেষ করে দেয়; আরও লিটার বাদ দেওয়া হয়।

গণনা করার সবচেয়ে সহজ উপায় হল শেষ নিক্ষেপ দিয়ে শুরু করা। যদি একই পাশাগুলির \(4\) ইতিমধ্যেই উপলব্ধ থাকে, শুধুমাত্র অবশিষ্ট পাশাগুলিকে পাস করতে হবে: সুযোগ হল \(\frac{1}{6}\) । যদি \(3\) একই পাশা হয়, তবে বাকি দুটিকে অবশ্যই ধরে রাখা সংখ্যা দেখাতে হবে। কারণ তাদের ফলাফলগুলি স্বাধীন, সম্ভাবনাকে গুণ করুন এবং \(\frac{1}{6}\cdot\frac{1}{6}=\frac{1}{36}\) পান। অন্যদিকে, আপনি যদি একই সময়ে বিভিন্ন সংখ্যা ধরে রাখেন তবে শেষ নিক্ষেপে কোনও সমস্যা হতে পারে না। তাই শুধু সংখ্যাই গুরুত্বপূর্ণ নয়, আপনি কী রাখবেন তাও গুরুত্বপূর্ণ।

বাকি থাকা \(2\) রোলগুলির সাথে, প্রতিটি অনুপস্থিত ডাই আরেকটি সুযোগ পায়। যদি \(4\) পাশা একই হয়, বাকি পাশার সাথে একটি আঘাতই যথেষ্ট। পাল্টা গণনা এখানে সংক্ষিপ্ত: তিনি সম্ভাব্যতার সাথে উভয় প্রচেষ্টাতেই লক্ষ্য সংখ্যা মিস করেছেন \(\frac{5}{6}\cdot\frac{5}{6}=\frac{25}{36}\) । সাফল্যের সম্ভাবনা তাই \(1-\frac{25}{36}=\frac{11}{36}\) । ছোট দলগুলির জন্য, আপনি নিক্ষেপের সমস্ত সম্ভাব্য পরিণতি গণনা করেন এবং লক্ষ্য পরিবর্তন করার অনুমতি দেন। স্টপের সেরা পছন্দের সাথে নিম্নলিখিত সম্ভাবনাগুলি দেখা দেয়:

সবচেয়ে বড় দল\(1.\) লিটারে ফলাফল\(2\) অবশিষ্ট রোলের সাথে সুযোগ
\(1\)\(720\)\(\frac{221}{17496}\)
\(2\)\(5400\)\(\frac{113}{3888}\)
\(3\)\(1500\)\(\frac{121}{1296}\)
\(4\)\(150\)\(\frac{11}{36}\)
\(5\)\(6\)\(1\)

লাইন একই ফ্রিকোয়েন্সি সঙ্গে ঘটবে না. উদাহরণস্বরূপ, সম্ভাব্য প্রথম নিক্ষেপের \( \(7776\) \(5400\) মধ্যে \(2\) পাশার একটি বৃহত্তম দল তৈরি করা হয়েছে। এর মধ্যে রয়েছে একটি একক জোড়া এবং \(2\) জোড়া; যদি টাই থাকে তবে আপনি তাদের মধ্যে একটি বেছে নিন। আমরা ডানদিকের প্রতিটি সুযোগকে মাঝখানের সংখ্যা দিয়ে গুণ করি এবং যোগফলকে \(7776\) দিয়ে ভাগ করি। এটি ফেরত দেয় \(p_3\) ; \(p_2\) এর জন্য আপনি শুধুমাত্র একটি অবশিষ্ট নিক্ষেপ ব্যবহার করুন। সর্বোত্তম স্টপিং পছন্দ সহ প্রথম নিক্ষেপের আগে নিম্নলিখিত মানগুলি প্রযোজ্য: \(p_2\) সর্বাধিক \(2\) এবং \(p_3\) সর্বাধিক \(3\) নিক্ষেপের জন্য:

$$p_2=\frac{221}{17496}\approx1{,}26315\%.$$

$$p_3=\frac{347897}{7558272}\approx4{,}60286425\%.$$

সবচেয়ে বড় গ্রুপ রাখা সত্যিই সেরা কিনা সম্পূর্ণরূপে পরীক্ষা করা যেতে পারে. নিম্নলিখিত PHP স্ক্রিপ্ট প্রতিটি সম্ভাব্য নির্বাচন বিবেচনা করে, যার মধ্যে মিশ্র সংখ্যা বা কোন পাশা রাখা নেই। এটি মোড়ের শেষে শুরু হয়, তারপর \(1\) এবং \(2\) অবশিষ্ট রোলের জন্য সর্বোত্তম সিদ্ধান্ত গণনা করে এবং শেষ পর্যন্ত প্রথম রোলের উপর গড়। বিল ছোট রাখতে একই প্যাটার্ন পুনরায় ব্যবহার করা হয়। সমস্ত তুলনা পূর্ণসংখ্যা দিয়ে করা হয়; শুধুমাত্র শতাংশ প্রদর্শন বৃত্তাকার হয়:

<?php

declare(strict_types=1);

if (PHP_INT_SIZE < 8) {
    throw new RuntimeException('64-Bit-PHP erforderlich.');
}

function combinations(array $limits): array
{
    $result = [[]];
    foreach ($limits as $limit) {
        $next = [];
        foreach ($result as $prefix) {
            for ($i = 0; $i <= $limit; $i++) {
                $next[] = [...$prefix, $i];
            }
        }
        $result = $next;
    }
    return $result;
}

function outcomes(int $number): array
{
    static $cache = [];
    if (isset($cache[$number])) {
        return $cache[$number];
    }
    $result = [];
    foreach (combinations(array_fill(0, $number, value: 5)) as $dice) {
        $counts = array_fill(0, count: 6, value: 0);
        foreach ($dice as $face) {
            $counts[$face]++;
        }
        $key = implode(',', $counts);
        $result[$key] = ($result[$key] ?? 0) + 1;
    }
    return $cache[$number] = $result;
}

function pattern(array $counts): string
{
    rsort($counts);
    return implode(',', $counts);
}

$states = [];
$values = [];
foreach (outcomes(5) as $key => $count) {
    $counts = array_map('intval', explode(',', $key));
    rsort($counts);
    $states[pattern($counts)] = $counts;
    $values[pattern($counts)] = (int) ($counts[0] === 5);
}

// Gemeinsamer Nenner: 6^(5 * verbleibende Würfe).
for ($remaining = 1; $remaining <= 2; $remaining++) {
    $next = [];
    foreach ($states as $key => $counts) {
        $best = 0;
        foreach (combinations($counts) as $held) {
            $number = 5 - array_sum($held);
            $total = 0;
            foreach (outcomes($number) as $rolled => $count) {
                $after = array_map('intval', explode(',', $rolled));
                foreach ($held as $face => $amount) {
                    $after[$face] += $amount;
                }
                $total += $count * $values[pattern($after)];
            }
            $best = max($best, $total * (6 ** (5 - $number)));
        }
        $next[$key] = $best;
    }
    $values = $next;
}

$numerator = 0;
$denominator = 6 ** 15;
foreach (outcomes(5) as $key => $count) {
    $numerator += $count * $values[pattern(array_map('intval', explode(',', $key)))];
}
[$a, $b] = [$numerator, $denominator];
while ($b !== 0) {
    [$a, $b] = [$b, $a % $b];
}
echo intdiv($numerator, $a), '/', intdiv($denominator, $a), PHP_EOL;
printf("%.10f%%\n", (100 * $numerator) / $denominator);

আশেপাশে \(4{,}60\%\) মানে: সেরা পছন্দের পরেও, একটি সমস্যা বিরল থেকে যায়। আপনি যদি প্রতিবার সবকিছু পুনরায় রোল করেন, সর্বাধিক \(3\) প্রচেষ্টার সুযোগ শুধুমাত্র \(0{,}23130\%\) । আপনি যদি পাশা মেলতে থাকেন, কিন্তু \(1.\) রোলের পরে বেছে নেওয়া টার্গেট নম্বরে লেগে থাকেন, তাহলে আপনি প্রায় \(4{,}52941\%\) অর্জন করতে পারবেন। বৃহত্তর গোষ্ঠীতে স্যুইচ করা তাই একটি ছোট অতিরিক্ত সুবিধা নিয়ে আসে। এটি গাণিতিক কৌশল বা বিশুদ্ধ অন্ত্রের অনুভূতি যাই হোক না কেন: নিফেল একটি নিরবধি, বিনোদনমূলক এবং সর্বোপরি, বিনোদনমূলক বোর্ড গেম।

পেছনে