摘要: /* 直接费马小定理 */ #include #include #include #include #define ll long long using namespace std; ll slow_mul(ll a,ll b,ll c) { ll ans=0; a=a%c;b=b%c; while(b) { if(b&1) ... 阅读全文
posted @ 2016-05-21 19:59 一入OI深似海 阅读(180) 评论(0) 推荐(0) 编辑
摘要: /* Lucas定理 C(n,m)%p(p为素数) C(n,m)与C(a[n],b[n])*C(a[n-1],b[n-1])*C(a[n-2],b[-2])*....*C(a[0],b[0])模p同余 a,b 是n,m在p进制下的数 有的推公式: (C(n%p,m%p,p)*Lcs(n/p,m/p,p))%p; 关键是求 C(n%p,m%p,p) 递归会很慢 for的话会爆掉 这里用一个定理:a... 阅读全文
posted @ 2016-05-21 17:23 一入OI深似海 阅读(228) 评论(0) 推荐(0) 编辑
摘要: /* 将n个不同的球放入m个不同的盒子的方案数 m^n */ #include #include #include using namespace std; int n,m,a[1010],l; int main() { scanf("%d%d",&n,&m); int k=m; while(k) { a[++l]=k%10; ... 阅读全文
posted @ 2016-05-21 16:05 一入OI深似海 阅读(358) 评论(9) 推荐(0) 编辑