标签:神秘 int long 1Cn1 maxn nCnn ans 钥匙 快速
题目:
https://ac.nowcoder.com/acm/contest/17345/D
思路:
或者是说倒序相加
1Cn1+2Cn2+3Cn3+....(n-1)cn(n-1)+nCnn
nCnn+(n-1)Cnn-1+...................1Cn1
ans=[n*(2^n-1)+n]/2;
ans=n*(2^(n-1))
快速幂来求
#include<stdio.h>
const int maxn=1000000007;
int main()
{
long long ans=1;
int n;
scanf("%d",&n);
long long b=n-1,a=2;
while(b)
{
if(b&1)
ans=(ans*a)%maxn;
a=(a*a)%maxn;
b>>=1;
}
ans*=n;
if(ans>maxn)
ans%=maxn;
printf("%lld",ans);
}
标签:神秘,int,long,1Cn1,maxn,nCnn,ans,钥匙,快速 来源: https://www.cnblogs.com/aacm/p/14854896.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。