求大组合数模板
来源:互联网 发布:隔壁老王 知乎 编辑:程序博客网 时间:2024/06/05 00:20
从n个数中选出m个的方案数称为n的m的组合数,下面是可以求出long long 范围内的组合数模板。
主要思想就是利用double 求出近似的数值,最后约分。
long long fun(double n,double m){double s=1.0;while(m>0){s*=(n--)/(m--);}s+=0.5; //防止有精度损失而造成的误差.return (long long)s;}例题:
Selection of Personnel
Time Limit:500MS Memory Limit:65536KB 64bit IO Format:%I64d & %I64uDescription
One company of IT City decided to create a group of innovative developments consisting from 5 to 7 people and hire new employees for it. After placing an advertisment the company received n resumes. Now the HR department has to evaluate each possible group composition and select one of them. Your task is to count the number of variants of group composition to evaluate.
Input
The only line of the input contains one integer n (7 ≤ n ≤ 777) — the number of potential employees that sent resumes.
Output
Output one integer — the number of different variants of group composition.
Sample Input
Input
7
Output
29
利用上述模板直接求:
#include<stdio.h>#include<string.h>int vis2[800];long long fun(double n,double m){double s=1.0;while(m>0){s*=(n--)/(m--);}s+=0.5;return (long long)s;}int main(){ double n,k=5,s; long long sum=0; scanf("%lf",&n); sum+=(fun(n,5)+fun(n,6)+fun(n,7)); printf("%lld\n",sum); return 0;}
0 0
- 求大组合数模板
- 【求组合数模板】
- 求组合数模板
- 求组合数模板
- 求组合数(模板)
- 求大组合数 HIT2813
- 大组合数的模板
- Lucas大组合数模板
- 求大组合数取模的模板(lucas定理)
- hdu5651xiaoxin juju needs help(大组合数模板)
- C++求组合数
- 求组合数
- 求组合数算法
- C++求组合数
- 求组合数
- C++求组合数
- 求组合数
- 求组合数
- 为已存在数据的表加主键
- winform调用webservice时步骤
- 如果把JAVA EE项目打成war包,上传到服务器!
- iOS 特殊类 UIControl
- mac安装caffe(避免踩坑的脚本)
- 求大组合数模板
- MySQL行级锁、表级锁、页级锁详细介绍
- Android与服务器端数据交互(http协议整合struts2+android)
- Mac OS X 下 TAR.GZ 方式安装 MySQL5.7
- UIPickerView控件中自定义 及 改变当前选中的Item的字体颜色
- 以斐波那契数为例分析算法复杂度
- 让Mac启动的时候自动启动mysql
- 51nod--1240莫比乌斯函数 (数论)
- android典型的选项卡界面利用viewPager+fragment实现