2015-03-29 00:12:33
总结:这场的状态和前两场一样糟糕... (话说自从bc发钱以来,参赛者实力高了一个档次...)
和前几场一样,第一题总是被卡... 不过后来沉下心耐心地搞掉了第二题...
A题:方法一:暴力打表 / 打表找规律。方法二:数学搞之,贴一下题解:
考虑期望的可加性。第)个位置上出现0
m)
(1)规律/数学:
1 #include <cstdio> 2 #include <cstring> 3 #include <cstdlib> 4 #include <cmath> 5 #include <vector> 6 #include <map> 7 #include <set> 8 #include <stack> 9 #include <queue> 10 #include <string> 11 #include <iostream> 12 #include <algorithm> 13 using namespace std; 14 15 #define MEM(a,b) memset(a,b,sizeof(a)) 16 #define REP(i,n) for(int i=0;i<(n);++i) 17 #define FOR(i,a,b) for(int i=(a);i<=(b);++i) 18 #define getmid(l,r) ((l) + ((r) - (l)) / 2) 19 #define MP(a,b) make_pair(a,b) 20 21 typedef long long ll; 22 typedef pair<int,int> pii; 23 const int INF = (1 << 30) - 1; 24 25 int n,m; 26 27 int Gcd(int a,int b){ 28 while(a > 0 && b > 0){ 29 if(a > b) a %= b; 30 else b %= a; 31 } 32 return a + b; 33 } 34 35 int main(){ 36 while(scanf("%d%d",&n,&m) != EOF){ 37 int g = Gcd(n * m,n + m); 38 printf("%d/%d\n",n * m / g,(n + m) / g); 39 } 40 return 0; 41 }