kuangbin专题二十一:概率&期望
时间:2021-08-07
本文章向大家介绍kuangbin专题二十一:概率&期望,主要包括kuangbin专题二十一:概率&期望使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
思路:简单概率。
#include<iostream> #include<cstdio> #include<cstring> using namespace std; const int maxn = 105; int gcd(int x, int y) { return x == 0 ? y : gcd(y % x, x); } int main(){ int T; cin >> T; for(int t = 1; t <= T; t++) { int n; cin >> n; int tot = 0, neg = 0; for(int i = 0; i < n; i++) { int x; cin >> x; if(x < 0) x = -x, neg++; tot += x; } cout << "Case " << t << ": "; if(neg == n) cout << "inf" << endl; else { int y = gcd(tot, n - neg); cout << tot / y << "/" << (n - neg) / y << endl; } } return 0; }
思路:不能重复计算,需要倒序。
#include<iostream> #include<cstdio> #include<cstring> using namespace std; const int maxn = 105; int gold[maxn]; double e[maxn]; int main(){ int T; cin >> T; for(int t = 1; t <= T; t++) { int n; cin >> n; memset(e, 0, sizeof(e)); for(int i = 0; i < n; i++) cin >> gold[i]; e[n-1] = gold[n-1]; for(int i = n - 2; i >= 0; i--) { e[i] = gold[i]; int len = min(6, n - 1 - i); for(int j = 1; j <= len; j++) e[i] += e[i + j] / len; } printf("Case %d: %.7f\n", t, e[0]); } return 0; }
#include<iostream> #include<cstdio> #include<cstring> using namespace std; const int maxn = 1e5 + 5; double ary[maxn]; int main(){ int T; cin >> T; for(int i = 2; i < maxn; i++) { double tot = 0; int c = 0; for(int j = 1; j * j <= i; j++) { if(i % j == 0) { tot += ary[j]; c++; if(j != i / j) { tot += ary[i / j]; c++; } } } ary[i] = (tot + c) / (c - 1); } for(int t = 1; t <= T; t++) { int n; cin >> n; printf("Case %d: %.6lf\n", t, ary[n]); } return 0; }
LightOJ1079 Just another Robbery
思路:概率dp。
#include<iostream> #include<cstdio> #include<cstring> using namespace std; const int maxn = 1e4 + 5; float dp[maxn]; int gain[maxn]; float risk[maxn]; int main(){ int T; cin >> T; for(int t = 1; t <= T; t++) { memset(dp, 0, sizeof(dp)); dp[0] = 1; float P; int n; cin >> P >> n; int sum = 0; for(int i = 1; i <= n; i++){ cin >> gain[i] >> risk[i]; sum += gain[i]; } for(int i = 1; i <= n; i++) { for(int j = sum; j >= gain[i]; j--){ dp[j] = max(dp[j], dp[j - gain[i]] * (1 - risk[i])); } } for(int i = sum; i >= 0; i--) if(dp[i] >= (1 - P)) { printf("Case %d: %d\n", t, i); break; } } return 0; }
思路:算无相同生日概率。
#include<iostream> #include<cstdio> #include<cstring> #include<cmath> using namespace std; const int maxn = 1e5 + 5; int main(){ int T; cin >> T; for(int t = 1; t <= T; t++) { int n; cin >> n; int cnt = 1; double p = 1; while(p > 0.5) { p *= (n - cnt) * 1.0 / n; cnt++; } printf("Case %d: %d\n", t, --cnt); } return 0; }
原文地址:https://www.cnblogs.com/arch/p/15096622.html
- Pandas-Series知识点总结
- Numpy基础知识点汇总
- P3388 【模板】割点(割顶)
- python爬取链家租房之获取房屋的链接和页面的详细信息
- 信用卡“坏账”客户分析(一)
- 一道简单的sql语句题
- python爬虫反爬取---设置User Agent自动变换header文件
- 一文读懂Python多线程
- 深入理解Python变量作用域与函数闭包
- TensorFlow从1到2 - 5 - 非专家莫入!TensorFlow实现CNN
- JetBrains Rider 破解 (ideaIU等等开发工具都通用)
- python中的小魔法(一)
- 由问题入手,步步爬出Python中赋值与拷贝的坑
- python爬取链家租房之获得每一页的房屋信息地址(持续更新)
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- python-快速排序
- 【python-leetcode75-双指针】颜色分类
- 【python-leetcode713-双指针】乘积小于k的子数组
- vuejs之构建简易音乐播放器
- vuejs小例子之天气查询
- 【python-leetcode259-双指针】三个数的最小和
- vuejs之vue.js+axios结合使用
- c语言之指向指针的指针
- c语言之利用#if #endif来进行注释或者运行不同的主函数
- c++之对组pair
- c++STL容器之set/multiset容器
- c++STL容器之list容器
- c++STL容器之deque容器
- Web自动化必会「Web基础、元素定位、元素操作、Selenium运行原理、项目实战+框架」
- HTML5 meta viewport参数详解