DZY Loves Balls
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 746 Accepted Submission(s): 411
Problem Description
There are
n
black balls and
m
white balls in the big box.
Now, DZY starts to randomly pick out the balls one by one. It forms a sequence S . If at the i -th operation, DZY takes out the black ball, Si=1 , otherwise Si=0 .
DZY wants to know the expected times that '01' occurs in S .
Now, DZY starts to randomly pick out the balls one by one. It forms a sequence S . If at the i -th operation, DZY takes out the black ball, Si=1 , otherwise Si=0 .
DZY wants to know the expected times that '01' occurs in S .
Input
The input consists several test cases. (
TestCase≤150
)
The first line contains two integers, n , m(1≤n,m≤12)
The first line contains two integers, n , m(1≤n,m≤12)
Output
For each case, output the corresponding result, the format is
p/q
(
p
and
q
are coprime)
Sample Input
1 1 2 3
Sample Output
1/2 6/5HintCase 1: S='01' or S='10', so the expected times = 1/2 = 1/2 Case 2: S='00011' or S='00101' or S='00110' or S='01001' or S='01010' or S='01100' or S='10001' or S='10010' or S='10100' or S='11000', so the expected times = (1+2+1+2+2+1+1+1+1+0)/10 = 12/10 = 6/5
代码:
#include<stdio.h>
#include<string.h>
int gcd(int x,int y)
{
int t;
while(y)
{
t=y;
y=x%y;
x=t;
}
return x;
}
int main()
{
int n,m,a;
while(~scanf("%d%d",&n,&m))
{
int x=n*m;
int y=n+m;
a=gcd(x,y);
printf("%d/%d\n",x/a,y/a);
}
return 0;
}