loj#2038. 「SHOI2015」超能粒子炮・改

题目链接

loj#2038. 「SHOI2015」超能粒子炮・改

题解

卢卡斯定理
之后对于%p分类
剩下的是个子问题递归
loj#2038. 「SHOI2015」超能粒子炮・改_第1张图片
n,k小于p的S可以预处理,C可以卢卡斯算

代码

#include 
#include 

inline long long read() { 
    long long  x = 0,f = 1; 
    char c = getchar(); 
    while(c < '0' || c > '9') c = getchar(); 
    while(c <= '9' && c >= '0') x = x * 10 + c - '0',c = getchar(); 
    return x * f; 
} 

#define LL long long 
const int P = 2333; 
const int maxn = P + 7; 
int c[maxn][maxn],s[maxn][maxn]; 
inline void add(int &x,int y) {  
    x = x + y >= P ? x + y - P : x + y;     
} 
int C(LL n,LL k) { 
    if(k < 0 || k > n)return 0; 
    if(n

转载于:https://www.cnblogs.com/sssy/p/9594321.html

你可能感兴趣的:(loj#2038. 「SHOI2015」超能粒子炮・改)