图灵杯-第四届“图灵杯”NEUQ-ACM 程序设计竞赛-A-谷神的赌博游戏
来源:互联网 发布:外国法制史 知乎 编辑:程序博客网 时间:2024/05/16 06:20
ACM模版
描述
题解
这个题是一个数论题,主要是推公式,但是 dp 同样是可以过的……
先来说 dp(代码 One),设置
说到数论,这个题首先我们可以将所有数
此时存在两种情况,以
第一种的序列是
第二种的序列是
而所有的排列结果为
化简形式不唯一,考虑到代码的最简,化成下边的形式最好:
就酱,这个题算是告一段落了~~~
代码
One:
#include <iostream>#include <cstring>using namespace std;const int MAXN = 22;int n;double dp[MAXN][MAXN][MAXN][3];int main(){ int T; cin >> T; while (T--) { memset(dp, 0, sizeof(dp)); cin >> n; int m = 3 * n + 1; for (int i = 0; i <= n + 1; i++) { for (int j = 0; j <= n; j++) { for (int k = 0; k <= n; k++) { if (i + j + k == 1) { if (i) { dp[i][j][k][1] = (n + 1) * 1.0 / m; } else if (j) { dp[i][j][k][2] = n * 1.0 / m; } continue; } int now = m - i - j - k + 1; dp[i][j][k][1] = (j == 0 ? 0 : dp[i][j - 1][k][2] * (n - j + 1) / now) + (k == 0 ? 0 : dp[i][j][k - 1][1] * (n - k + 1) / now); dp[i][j][k][2] = (i == 0 ? 0 : dp[i - 1][j][k][1] * (n - i + 2) / now) + (k == 0 ? 0 : dp[i][j][k - 1][2] * (n - k + 1) / now); } } } printf("%.9lf\n", dp[n + 1][n][n][1]); } return 0;}
Two:
#include <cstdio>int n;double ans;int main(){ int T; scanf("%d", &T); while (T--) { scanf("%d", &n); ans = (n + 1.0) / (3 * n + 1); for (int i = 1; i <= n; i++) { ans = ans * i / (i + n); } printf("%.9f\n", ans); } return 0;}
阅读全文
0 0
- 图灵杯-第四届“图灵杯”NEUQ-ACM 程序设计竞赛-A-谷神的赌博游戏
- 第四届“图灵杯”NEUQ-ACM程序设计竞赛 A: 谷神的游戏【思维+组合数学】
- 谷神的赌博游戏(找规律+排列组合 NEUQ“图灵杯”)
- 【第四届图灵杯A】谷神的赌博游戏
- 第四届“图灵杯”NEUQ-ACM程序设计竞赛总结 【8/10】
- 第四届“图灵杯”NEUQ-ACM程序设计竞赛部分题解
- 第四届“图灵杯”NEUQ-ACM 程序设计竞赛(团队赛)
- 第四届“图灵杯”NEUQ-ACM程序设计竞赛(团队赛)-网络同步赛A(组合数学)
- 第四届“图灵杯”NEUQ-ACM程序设计竞赛(团队赛)—A
- 第四届图灵杯A题 谷神的赌博游戏
- 图灵杯-第四届“图灵杯”NEUQ-ACM 程序设计竞赛-J-简单的变位词
- 图灵杯-第四届“图灵杯”NEUQ-ACM 程序设计竞赛-E-简单的RMQ
- 图灵杯-第四届“图灵杯”NEUQ-ACM 程序设计竞赛-F-一道简单的递推题
- 第四届“图灵杯”NEUQ-ACM程序设计竞赛 E: 简单的RMQ【线段树】
- 谷神的赌博游戏
- 图灵杯-第四届“图灵杯”NEUQ-ACM 程序设计竞赛-C-来简单地数个数
- 图灵杯-第四届“图灵杯”NEUQ-ACM 程序设计竞赛-D-简单图形输出
- 图灵杯-第四届“图灵杯”NEUQ-ACM 程序设计竞赛-G-那么大奶牛之神
- Linux-终端、作业控制与守护进程
- Swift Navigation添加图片标题
- Excel VBA高效办公应用-第四章-用VBA处理市场调查问卷数据
- Python系统编程--进程
- Swift
- 图灵杯-第四届“图灵杯”NEUQ-ACM 程序设计竞赛-A-谷神的赌博游戏
- 查询数据库中重复记录的方法
- android binder机制---native获取ServiceManager
- git版本库的工作区 暂存区
- 二、Mac下Appium环境搭建
- 计算灰度图的像素直方图,并显示(c++)
- 线程安全与可重入函数
- C与C++的区别
- 【Hash】自己对于一种字符串hash的证明(?)