Ba người A, B, C tung xúc xắc 6 mặt. Tìm xác suất C được số lớn hơn cả A và B.
Phân tích
Giá trị lớn nhất của A và B: M = max(A, B). C cần > M.
Số mặt thỏa mãn: 6 - M (các mặt M+1, M+2, ..., 6).
Xác suất = (6 - M) / 6. Rút gọn phân số.
Ví dụ 1
Input – A = 3, B = 5
Output – 1/6
Giải thích: M = 5. Chỉ mặt 6 > 5. Xác suất = 1/6.
Ví dụ 2
Input – A = 2, B = 4
Output – 1/3
Giải thích: M = 4. Mặt 5,6 > 4. Xác suất = 2/6 = 1/3.
Ví dụ code
#include <bits/stdc++.h>
using namespace std;
void thirdDiceProbability(int a, int b) {
int m = max(a, b);
int favorable = 6 - m;
int total = 6;
if (favorable <= 0) {
cout << "0/1" << endl;
return;
}
int g = __gcd(favorable, total);
cout << favorable/g << "/" << total/g << endl;
}
int main() {
thirdDiceProbability(2, 2); // M=2, favorable=4 → 4/6=2/3
thirdDiceProbability(3, 5); // 1/6
thirdDiceProbability(1, 1); // 5/6
return 0;
}
Kết quả
2/3 1/6 5/6
Mở rộng: Nếu xúc xắc có N mặt, xác suất = (N - max(a,b)) / N.