UVA10288 Coupons
来源:互联网 发布:网络用语爸爸什么意思 编辑:程序博客网 时间:2024/06/11 10:51
题意:给出一个n,求出生成所有n以内数的可能性
链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=36831
思路:概率题,求概率和,sum = n/n+n/(n-1)+n/(n-2)+.....+n/(n-n)
注意点:及时约分,否则会溢出。
以下为AC代码:
RunIDUserOJProb IDResult Memory
(KB)Time
(ms)Language Length
(Bytes)Submit Time
luminous11
UVA
10288
Accepted
15C++11 4.8.2
22729 days ago
#include <iostream>#include <cstdio>#include <string>#include <cstring>#include <vector>#include <deque>#include <list>#include <cctype>#include <algorithm>#include <climits>#include <queue>#include <stack>#include <cmath>#include <map>#include <set>#include <iomanip>#include <cstdlib>#include <ctime>#define ll long long#define ull unsigned long long#define all(x) (x).begin(), (x).end()#define clr(a, v) memset( a , v , sizeof(a) )#define pb push_back#define mp make_pair#define read(f) freopen(f, "r", stdin)#define write(f) freopen(f, "w", stdout)using namespace std;const double pi = acos(-1);struct node{ ull a; ull b; ull c; int len; int len_2; void print(){ len = len_2 = 0; ull tmp = c; while ( tmp ){ len ++; tmp /= 10; } tmp = a; while ( tmp ){ len_2 ++; tmp /= 10; } if ( b == 0 ) len = 0; if ( len == 0 ) cout << a << endl; else{ for ( int i = 0; i <= len_2; i ++ ){ cout << ' '; } cout << b << endl; cout << a << ' '; for ( int i = 0; i < len; i ++ ){ cout << '-'; } cout << endl; for ( int i = 0; i <= len_2; i ++ ){ cout << ' '; } cout << c << endl; } }}num[40];inline ull gcd ( ull x, ull y ){ return y == 0 ? x : gcd ( y, x % y );}void calc( ull n ){ ull a = 0, b = 0, c = 1; num[n].a = 1; num[n].b = 0; num[n].c = 1; for ( ll i = n - 1; i > 0; i -- ){ num[n].a += ( n / i ); int k = n % i; c = gcd ( num[n].c, i ); a = num[n].c / c * k + i / c * num[n].b; b = num[n].c / c * i; c = gcd ( a, b ); a /= c; b /= c; num[n].a += a / b; num[n].b = a % b; num[n].c = b; }}int main(){ ios::sync_with_stdio( false ); for ( ull i = 0; i < 35; i ++ ){ calc( i ); } ull n; while ( cin >> n ){ num[n].print(); } return 0;}
0 0
- UVA10288 Coupons
- UVA10288 Coupons
- uva10288 Coupons
- [UVA10288] Coupons && 数学期望
- 【ACM刷题录】UVa10288 Coupons
- 【Uva10288】——Coupons概率
- UVA10288 - Coupons (概率+递推)
- UVA10288 Coupons(卡输出神题)
- UVa10288
- UVa10288
- UVa10288
- Coupons
- uva10288(数学期望)
- ACM Coupons
- poj2625 Coupons
- Coupons UVA
- Uva10288(概率期望+暴力模拟)
- r4ds coupons gamezway
- HTTP访问的两种方式(HttpClient+HttpURLConnection)整合汇总对比
- R读写数据
- GROUP BY,WHERE,HAVING之间的区别和用法
- [备忘] VPS 安全和其他
- 她不在,他再也不打豆浆了
- UVA10288 Coupons
- BZOJ 1185 HNOI 2007 最小矩形覆盖 旋转卡壳
- ldd3_模块VS应用程序
- cocos2d截屏
- java的内存管理实例
- 解決BufferedReader读取UTF-8文件中文乱码
- Oracle substr函数用法
- ldd3笔记_字符设备驱动
- mysql的distinct用法-mysql中如何筛选出非重复的数据