Rating 800 总目录
题目链接入口
题目描述
有三个人 Yakko(♂), Wakko(♂),和 Dot(♀),他们分别想去一个地方。但是他们假期时间不够,三个人只能去同一个地方。通过掷骰子,决定哪个地方。方案是:谁掷的点数大,去谁想去的地方。出于绅士风度,如果Dot掷的点数与他们俩相同,则去Dot想去的地方。现在给出Yakko和Wakko掷骰子的点数 Y,W,求能去Dot想去的地方的概率。
输入
注意:题目要求只输出一行数据,Yakko和Wakko掷骰子的点数 Y,W
输出
以不可约分数的形式输出所需的概率,格式为«A/B»,其中A-分子,B-分母。如果所需概率等于零,则输出«0/1»。如果所需概率等于1,则输出«1/1»。
案例
输入案例
4 2
输出案例
1/2
题解:
先看Yakko和Wakko掷的点数分类讨论:
- 如果Yakko和Wakko掷的点数均为1,则有1/1的概率
- 如果Yakko和Wakko掷的点数最大为2,则有5/6的概率
- 如果Yakko和Wakko掷的点数最大为3,则有2/3的概率
- 如果Yakko和Wakko掷的点数最大为4,则有1/2的概率
- 如果Yakko和Wakko掷的点数最大为5,则有1/3的概率
- 如果Yakko和Wakko掷的点数最大为6,则有1/6的概率
#include<cstdio>
#include<iostream>
#include<cstring>
#include<cmath>
#include<algorithm>
#define IOS ios::sync_with_stdio(false); cin.tie(0); cout.tie(0)
#define ll long long
#define int ll
#define INF 0x3f3f3f3f
using namespace std;
int read()
{
int w = 1, s = 0;
char ch = getchar();
while (ch < '0' || ch>'9') { if (ch == '-') w = -1; ch = getchar(); }
while (ch >= '0' && ch <= '9') { s = s * 10 + ch - '0'; ch = getchar(); }
return s * w;
}
//------------------------ 以上是我常用模板与刷题几乎无关 ------------------------//
signed main()
{
int y = 0, w = 0;
scanf("%lld%lld", &y, &w);
int cmp = max(y, w);
if (cmp == 1)
printf("1/1\n");
if (cmp == 2)
printf("5/6\n");
if (cmp == 3)
printf("2/3\n");
if (cmp == 4)
printf("1/2\n");
if (cmp == 5)
printf("1/3\n");
if (cmp == 6)
printf("1/6\n");
return 0;
}