HDU 4043 FXTZ II
排列组合求概率。大概是说:有n个小球,第i个(从0开始)小球权值为2^i,AB两人等概率取球,也就是说轮到谁不一定,但概率为50%。要保证A得到的球的总权值比B的小。输入n时,输出概率。用分子分母形式表示。分子就是成功的总数,分母就是所有的排列呗。n个球,就有n!种排法,每个球不是给A就是给B,所以再乘以2^n就是分母。而分子不会求,dfs打了个小表(10以内)得1,3,15,105......可以看出是1*3*5*7……果断用java。
先是dfs部分
int bin[33] = {1}, ans, x[33];
bool vis[33];void dfs2(int a, int b, int step, int n)
{if(step == n){ans++;return;}int c = bin[x[step]];if(a + c < b)dfs2(a + c, b, step + 1, n);dfs2(a, b + c, step + 1, n);
}void dfs(int step, int n)
{if(step == n){dfs2(0, 0, 0, n);return;}REP(i, n)if(!vis[i]){vis[i] = 1;x[step] = i;dfs(step + 1, n);vis[i] = 0;}
}int main()
{//freopen("input.txt", "r", stdin);//freopen("output.txt", "w", stdout);FF(i, 1, 30)bin[i] = bin[i - 1] * 2;FF(i, 1, 10){ans = 0;CLR(vis, 0);dfs(0, i);PI(ans);}return 0;
}
之后是java部分
import java.util.*;
import java.math.*;public class Main {public static void main(String[] args){BigInteger a[] = new BigInteger[555];BigInteger b[] = new BigInteger[555];a[1]=BigInteger.ONE; b[1]=BigInteger.valueOf(2);BigInteger x;for(int i = 2; i <= 500; i++){a[i] = a[i - 1].multiply(BigInteger.valueOf(i * 2 - 1));b[i] = b[i - 1].multiply(BigInteger.valueOf(2 * i));}Scanner cin = new Scanner(System.in);int t = cin.nextInt();for(int i = 0; i < t; i++){int n = cin.nextInt();x = a[n].gcd(b[n]);System.out.println(a[n].divide(x) + "/" + b[n].divide(x));}}
}
HDU 4043 FXTZ II相关推荐
- hdu 4043 FXTZ II [ 概率 + Java大数]
传送门 FXTZ II Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Tota ...
- 【HDOJ】4043 FXTZ II
1. 题目描述 有n个球,第i个球的伤害值为$2^i-1, i \in [1,n]$.有甲乙两个人,每次由甲选择n个球中的一个,用它以相同概率攻击自己或者乙,同时彻底消耗这个球.这样的攻击最多进行n次 ...
- HDU/HDOJ 4043 BUPT 235 FXTZ II 2011ACM北京网络赛 D题
FXTZ II Accept:15 Submit:28 Time Limit:1000MS Memory Limit:65536KB Description Cirno is play ...
- HDU - 5919 Sequence II——主席树+区间种类++逆序建树
[题目描述] HDU - 5919 Sequence II [题目分析] 题目给定一个数组,每次查询一个区间,找出区间内不同数字的个数x,然后输出按出现顺序第x/2向上取整个数字的位置. 按照要求,我 ...
- 概率,递推,找规律,高精度(FXTZ II,hdu 4043)
总结一下吧.. 像这种题,输入很简单,就几个数,然而正常算运算量很大,或时间复杂度很高,或分类讨论很麻烦的题,就试试找规律吧.只能说很可能是找规律,但也有例外吧. 这题的话,手算或计算机算多几个小数据 ...
- HDU 5919 Sequence II 主席树
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=5919 Sequence II Time Limit: 9000/4500 MS (Java/Othe ...
- HDU 3081Marriage Match II(二分法+并检查集合+网络流量的最大流量)
职务地址:http://acm.hdu.edu.cn/showproblem.php? pid=3081 有一段时间没写最大流的题了,这题建图竟然想了好长时间... 刚開始是按着终于的最大流即是做多轮 ...
- hdu 5233 Gunner II
原题链接:http://acm.hdu.edu.cn/showproblem.php?pid=5233 简单题,stl水之... 1 #include<algorithm> 2 #inc ...
- HDU - 5919 Sequence II(主席树+思维)
题目链接:点击查看 题目大意:给出一个长度为 n 的数列 a ,再给出 m 次询问,每次询问给出一个区间 [ l , r ] ,问区间 [ l , r ] 内首次出现的数字的位置的中位数 题目分析:题 ...
最新文章
- vim 插件_Vim自动生成tags插件vim-gutentag使用方法
- python创意小作品代码-Python学习,给自己的代码做个合集,定制自己的桌面软件!...
- python安装教程3.8.5-怎么安装最新Python3.8.5-新手入门教程必看
- matlab画扇区,NFCDemo NFC读写测试 ,自动读取每个扇区 块的值 matlab 238万源代码下载- www.pudn.com...
- 历史上唯独倒闭的两家银行,看看他们是如何破产的
- grub4dos和winsetupfromusb1.4
- 《计算机组成原理》----2.3 二进制运算
- matlab bwdist
- html提示版本过低升级,IE8浏览器提示版本过低怎样升级呢?
- 什么是token以及token的原理
- antd-design库iconfont字体本地化
- axis webservice 实验
- 未转变者服务器可作弊,未转变者作弊指令有哪些-未转变者作弊指令大全
- php euc-cn,php配置中文解说
- vue.js - 收藏集 - 掘金
- TweenMax逐帧动画
- PLC 定时器指令计数器指令比较赋值指令的总结
- 单片机中常说的 1T 和 12T 的意思
- 网页导航栏设计方法和技巧
- VS工程引用出现感叹号
热门文章
- win11自带杀毒软件怎么关闭 windows11关闭自带杀毒软件的步骤
- js随机数,随机从数组里面去一个或多个元素
- c++算法基础必刷题目——前缀和与差分
- 解释器、编译器与翻译器
- 仿linux界面,Gmac 10 Linux——一款仿MacOS发行版初体验
- 铁路基因的传承与创新
- 地形建模(一)——TIN地形的生成
- Cell Reports:青年发育过程中脑血流与功能磁共振ALFF耦合
- C/C++错误分析errno,perror,strerror和GetLastError()函数返回的错误代码的意义
- 输入一个字母,若是小写字母,则变为大写输出,否则,原样输出。