LG5239 回望京都 组合数+暴力

问题描述

LG5239


题解

我就是个***,鉴定完毕。

\(C_m^n=C_{m-1}^n+C_{m-1}^{n-1}\) 都忘了。

所以暴力求出 \(1000\) 以内的 \(C_i^j\) ,二维前缀和即可。


\(\mathrm{Code}\)

#include<bits/stdc++.h>
using namespace std;

const int maxn=1007;
const int mod=19260817;

int T,n,m;
int s[maxn][maxn];
int C[maxn][maxn];


void Init(void){
    scanf("%d",&T);
}

void Preprocess(void){
    C[1][1]=C[1][0]=1;
    for(int i=2;i<=1000;i++){
        C[i][0]=1;
        for(int j=1;j<=i;j++) C[i][j]=(C[i-1][j]+C[i-1][j-1])%mod;
    }
    for(int i=1;i<=1000;i++){
        for(int j=1;j<=1000;j++){
            s[i][j]=(s[i-1][j]+s[i][j-1]-s[i-1][j-1]+C[i][j]+mod)%mod;
        }
    }
}

void Work(void){
    Preprocess();
    while(T--){
        int n,m;
        scanf("%d%d",&n,&m);
        printf("%d\n",s[m][n]);
    }
}

int main(){
    Init();
    Work();
    return 0;
}
全部评论

相关推荐

11-24 00:11
已编辑
广东工业大学 算法工程师
避雷深圳&nbsp;&nbsp;yidao,试用期&nbsp;6&nbsp;个月。好嘛,试用期还没结束,就直接告诉你尽快找下一家吧,我谢谢您嘞
牛客75408465号:笑死,直属领导和 hr 口径都没统一,各自说了一些离谱的被裁理由,你们能不能认真一点呀,哈哈哈哈哈😅😅😅
点赞 评论 收藏
分享
头像
10-16 09:58
已编辑
门头沟学院 Java
点赞 评论 收藏
分享
努力学习的小绵羊:我反倒觉得这种挺好的,给不到我想要的就别浪费大家时间了
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务