标签:nav ima 输入输出 log ons div 答案 orange 今天
辣鸡蒟蒻SOL是一个傻逼,他居然觉得数很萌!
今天他萌上了组合数。现在他很想知道simga(C(n,i))是多少;其中C是组合数(即C(n,i)表示n个物品无顺序选取i个的方案数),i取从0到n所有偶数。
由于答案可能很大,请输出答案对6662333的余数。
输入格式:
输入仅包含一个整数n。
输出格式:
输出一个整数,即为答案。
对于20%的数据,n <= 20;
对于50%的数据,n <= 1000;
对于100%的数据,n <= 1 000 000 000 000 000 000 (10^18)
证明:由当$a = b = 1$时,代入二项式定理可证明$1$式;当$a = -1$,$b = 1$时代入二项式定理可证明$2$式;代入$a = 1$,$b = -1$可得到另一个意义相同的式子;$(1式+2式) \over 2$可证明$3$式。
又复习了一下二项式定理。
#include<cstdio> using namespace std; const long long mo=6662333; long long ksm(long long a,long long p){ if(p<0) return 0; long long res=1; a%=mo; //这儿要先对a取模 for(;p;p>>=1,a=a*a%mo) if(p&1) res=res*a%mo; return res; } int main(){ long long n; scanf("%lld",&n); printf("%lld",ksm(2,n-1)); return 0; }
标签:nav ima 输入输出 log ons div 答案 orange 今天
原文地址:http://www.cnblogs.com/huihao/p/7800655.html