玩骰子(概率,暴力)
暴力就行,不过要注意,如果一开始就赢了,那么就不用再置骰子了那么就为1了。
1 #include<stdio.h> 2 #include<stdlib.h> 3 #include<algorithm> 4 #include<iostream> 5 #include<queue> 6 #include<math.h> 7 int kk(); 8 using namespace std; 9 typedef long long ll; 10 int a[7]; 11 int b[4]; 12 int c[4]; 13 int d[4]; 14 int main(void) 15 { 16 int n,i,j,k,p,q,s; 17 scanf("%d",&k); 18 while(k--) 19 { 20 for(i=1; i<=3; i++) 21 { 22 scanf("%d",&b[i]); 23 c[i]=b[i]; 24 } 25 for(i=1; i<=3; i++) 26 { 27 scanf("%d",&a[i]); 28 d[i]=a[i]; 29 } 30 int nn=kk(); 31 double sum; 32 if(nn==1) 33 { 34 sum=1; 35 } 36 else 37 { 38 int uu=0; 39 for(i=1; i<=3; i++) 40 { 41 42 int rr=0; 43 for(s=1; s<=6; s++) 44 { 45 for(j=1; j<=3; j++) 46 { 47 c[j]=b[j]; 48 } 49 c[i]=s; 50 rr+=kk(); 51 } 52 if(rr>uu) 53 { 54 uu=rr; 55 } 56 57 } 58 sum=1.0*uu/6; 59 60 } 61 printf("%.3f\n",sum); 62 } 63 return 0; 64 65 } 66 67 int kk() 68 { 69 int i,j,k,p,q; 70 sort(c+1,c+4); 71 sort(d+1,d+4); 72 int cnt=0; 73 int cnt2=0; 74 for(i=2; i<=3; i++) 75 { 76 if(d[i]==d[i-1]) 77 { 78 cnt++; 79 } 80 if(c[i]==c[i-1]) 81 { 82 cnt2++; 83 } 84 } 85 if(cnt2>cnt) 86 { 87 return 1; 88 } 89 else if(cnt2<cnt) 90 { 91 return 0; 92 } 93 else if(cnt==cnt2) 94 { 95 if(cnt==0) 96 { 97 int nx=d[1]+d[2]*10+d[3]*100; 98 int ny=c[1]+c[2]*10+100*c[3]; 99 if(ny>nx) 100 { 101 return 1; 102 } 103 else return 0; 104 } 105 if(cnt==1) 106 { 107 108 for(i=1; i<=3; i++) 109 { 110 if(c[i]!=c[2]) 111 { 112 break; 113 } 114 } 115 int nx=c[2]*100+c[2]*10+c[i]; 116 for(i=1; i<=3; i++) 117 { 118 if(d[i]!=d[2]) 119 { 120 break; 121 } 122 } 123 int ny=d[2]*100+d[2]*10+d[i]; 124 if(nx>ny) 125 { 126 return 1; 127 } 128 else return 0; 129 } 130 else if(cnt==2) 131 { 132 if(c[1]>d[1]) 133 { 134 return 1; 135 } 136 else return 0; 137 } 138 } 139 }
转载于:https://www.cnblogs.com/zzuli2sjy/p/5009052.html
玩骰子(概率,暴力)相关推荐
- 玩骰子的儿童(赫拉克利特)
一 公元前六世纪左右,在希腊殖民的伊奥尼亚地区有两个最著名的城邦,一是米利都,一是爱菲索.这两个城邦都地处繁荣的港口,盛产商人.然而,它们之所以青史留名,则是因为出产了一个比商人稀有得多的品种--哲人 ...
- hdu计算机学院大学生程序设计竞赛(2015’11)1003 玩骰子
玩骰子 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submis ...
- hdu 校赛 玩骰子
http://acm.hdu.edu.cn/contests/contest_showproblem.php?cid=638&pid=1003 玩骰子 Problem Description ...
- 玩骰子(hdu校赛)
题目链接:http://acm.hdu.edu.cn/contests/contest_showproblem.php?pid=1003&cid=638 账号:team2166 密码:148 ...
- (2015 杭电校赛 )玩骰子
玩骰子 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submis ...
- 掷骰子 概率 动态规划
掷骰子 题目描述 玩家A和B正在玩骰子游戏. A骰子有6个面,第i个面的点数是sideA[i]. B骰子有6个面,第i个面的点数是sideB[i]. 玩家A总共掷X次A骰子,每次掷骰子得到的面都是1/ ...
- 用C++的类完成玩骰子的游戏
我们生活中随处可见的玩骰子游戏,那么我们用C++的类实现出来时会是怎么样呢? 首先,是得到一个1-6之间随机数的写法 Random.h #ifndef RANDOM__H__ #define RAND ...
- ContestHunter #26 B 玩骰子
CH转移服务器上不去了,链接就不贴了. 题目简述: 掷N枚骰子,若掷到点数分别为A1,A2,An的[有序]集合,若该集合有一个子集之和为m,则称该集合为好集,问在N枚骰子的所有有序集合中取到一个好集的 ...
- EOJ #3452 唐纳德先生和假骰子【暴力】
题目链接 题目意思 给你一个数字p,代表人数,接着给出你两个骰子的六个面的数值,现在要你将骰子向上的点数和对人数取余,得到的余数分别为0到p-1,现在问你游戏是否公平. 解题思路 数值很小我们就用暴力 ...
最新文章
- das,nas,san区别——大型数据中心会用NAS+SAN软硬结合思路
- python连接阿里云odps
- 【Android Developers Training】 68. 序言:添加动画
- 精准评论,为何广受娱乐类产品的欢迎?
- linux查域名对应的ip 系统调用,DDNS 的工作原理及其在 Linux 上的实现
- Verilog如何避免Latch
- 查找数组中最大的2个数
- android 6.0获取蓝牙权限
- 如何区分oracle服务器、oracle客户端、plsql?
- 随便一个人就能干预大选?
- paip. 混合编程的实现resin4 (自带Quercus ) 配置 php 环境
- C1WebChart 图形化处理。
- Python IDE(集成开发工具)的下载安装教程
- CUDA各个版本下载网址
- 3dmax快捷键命令大全
- 小程序开发工具_小程序开发工具都有哪些?
- 光敏电阻、测试夹、DC2.1电源接口及万用表的使用
- java注解 pdf_使用 iText 复制带注释的 PDF
- 关于switch的一些理解
- 【Oracle】关于索引的那些事