uva11609】的更多相关文章

I - Teams Time Limit:1000MS     Memory Limit:0KB     64bit IO Format:%lld & %llu Submit cid=77956#status//I/0" style="padding-bottom:0px; line-height:normal; margin:0px; padding-left:0px; padding-right:0px; font-family:Arial,Helvetica,sans-s…
以三个人组队为例,3组合是:C(3,0)=1,3,3,1.还有队长的选择.有 1*0,3*1,3*2,1*3种. 组合数:            1      3        3        1 队长的选择:    0        1        2        3 原本选择数是1*0+3*1+3*2+1*3=12种.现在用另一种方法计算,观察到左右是对称的,因此1的数量,3的数量都是3个,就等于(2^3)*4/2=12种. #include <iostream> #include…
先选人,再从这些人里选一个队长,方案总数:C(i,1)*C(n,i)(其中i从1到n)的总和. 这个公式显然不能在时限内暴力算出来,需要变形和推导出更简单的来. 用到组合数里面这个公式:C(n,k)*C(k,r)=C(n,r)*C(n-r,k-r)(其中r<=k) 一变换以后就可以推出最后结果就是n*(2^n-1),n比较大,所以再用下快速幂就好了. 这里从实际模型出发解释一下这个组合数公式: 有n个球,从中选k个,再从k个里选r个做上标记,有多少选法? 一种思路就是先选k个在从k个里选r个,结…
题目大意 给定一个正整数 \(n\),请求出所有小于 \(n\) 人的团队如果选出一个人作为队长的不同的方案数(假定这些人两两不相同)对 \(10^9+7\)取模的结果. 分析 即求 \[\sum^n_{k=1}kC_n^k=\sum_{k=1}^n k\frac{n!}{k!(n-k)!}=\sum_{k=1}^nn\frac{(n-1)!}{(k-1)!(n-k)!}=n\sum_{k=1}^n C_{n-1}^{k-1}=n2^{n-1}\] 快速幂即可. #include<bits/st…
https://vjudge.net/problem/UVA-11609 题意: 有n个人,选一个或多个人参加比赛,其中一名当队长,有多少种方案?如果参赛者完全相同,但队长不同,算作不同的方案. 思路: 之后就是快速幂处理. #include<iostream> #include<algorithm> #include<cstring> #include<cstdio> #include<vector> #include<queue>…