HUD 5194--DZY Loves Balls【规律】

DZY Loves Balls

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)
Total Submission(s): 577    Accepted Submission(s): 317


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 .
 

Input
The input consists several test cases. ( TestCase150 )

The first line contains two integers, n , m(1n,m12)
 

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/5
Hint
Case 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
 可能数据比较弱,找规律就水过了。
分子=m * n
分母=m + n
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;

int gcd(int a,int b){
	if(b == 0) 
		return a;
	else 
		return gcd(b, a % b);
}

int main (){
	int n,m;
	while(scanf("%d%d",&n, &m)!=EOF){
			int a = m * n;
			int b = m + n;
			printf("%d/%d\n", (m*n)/gcd(a,b),(m+n)/gcd(a,b));
	}
	return 0;
}



你可能感兴趣的:(HUD 5194--DZY Loves Balls【规律】)