ให้ผู้เล่นสามคน A, B, C โยนลูกเต๋า เราต้องหาความน่าจะเป็นที่ C โยนลูกเต๋า และจำนวนที่ทำแต้มโดย C นั้นมากกว่าทั้ง A และ Bพี>
ในการตรวจสอบความน่าจะเป็นที่จะได้รับมูลค่ามากขึ้น เราต้องจำไว้ว่ามูลค่าของการโยนลูกเต๋าครั้งที่สามนั้นสูงกว่าสองครั้งก่อนหน้านั้น
เช่นเดียวกับ A โยนลูกเต๋าและให้คะแนน 2 และ B โยนลูกเต๋าและทำคะแนน 3 ดังนั้นความน่าจะเป็นที่ C จะได้รับค่าที่สูงขึ้นคือ 3/6 =1/2 เพราะมีเพียง 3 ค่าที่สูงกว่า A และ B นั่นคือ 4, 5 และ 6 ดังนั้นความน่าจะเป็นจะเป็น 1/2 หลังจากที่ลดลง
ดังนั้นควรลดผลลัพธ์ที่ได้ลงไปอีก
ป้อนข้อมูล
A = 3, B = 5
ผลผลิต
1/6
คำอธิบาย − ค่าเดียวที่มากกว่าทั้ง 3 และ 5 คือ 6 ดังนั้น 1/6 คือความน่าจะเป็น
ป้อนข้อมูล
A = 2, B = 4
ผลผลิต
1/3
คำอธิบาย − ค่าที่มากกว่าทั้ง 2 และ 4 คือ 5 และ 6 ที่มีความน่าจะเป็น 2/6 ซึ่งสามารถลดลงเหลือ 1/3
แนวทางที่ใช้ด้านล่างมีดังต่อไปนี้ในการแก้ปัญหา
-
เราจะหาค่าสูงสุดจากค่า A และ B
-
ลบค่าสูงสุดของ A และ B จาก 6 และคำนวณ gcd ด้วย 6
-
ส่งคืนผลลัพธ์
อัลกอริทึม
Start Step 1→ probability of getting more value in third dice void probab_third(int a, int b) declare int c = 6 - max(a, b) declare int GCD = __gcd(c, 6) Print GCD Step 2→ In main() Declare int a = 2, b = 2 Call probab_third(a, b) Stop
ตัวอย่าง
#include <bits/stdc++.h> using namespace std; //probability of getting more value in third dice void probab_third(int a, int b){ int c = 6 - max(a, b); int GCD = __gcd(c, 6); cout<<"probability of getting more value in third dice : " <<c / GCD << "/" << 6 / GCD; } int main(){ int a = 2, b = 2; probab_third(a, b); return 0; }
ผลลัพธ์
หากรันโค้ดด้านบน มันจะสร้างผลลัพธ์ต่อไปนี้ -
probability of getting more value in third dice : 2/3