先画出杨辉三角,我们发现\(C_{i}^{j}\)都在\(C_{n}^{m}\)的左上角

那么怎么快速的找倍数呢,由于杨辉三角是加法递推下来的,因此从我们可以边递推边取模,如果余数为0则满足。同时维护二维前缀和,ans[i][j]——到了第i行j列的答案数量。

需要注意的:对于每一行,要加一句 ans[i][i+1]=ans[i][i]; 由于j那个地方没有循环到2005 而下一行要用到这个答案 所以要继承。

#include<bits/stdc++.h>
#define N 2005
using namespace std;
int a[N+500][N+500],ans[N+500][N+500],t,k;
void YH_print()
{for(int i=0;i<=N;i++){a[i][0]=1,a[i][i]=1;}for(int i=2;i<=N;i++){for(int j=1;j<=i;j++){a[i][j]=(a[i-1][j-1]+a[i-1][j])%k;ans[i][j]=ans[i-1][j]+ans[i][j-1]-ans[i-1][j-1];if(!a[i][j]) ans[i][j]++;}ans[i][i+1]=ans[i][i];//由于j那个地方没有循环到2005 而二维前缀和又是一个正方形的维护 所以要继承。}
}
int main()
{ios::sync_with_stdio(false);cin.tie(NULL),cout.tie(NULL);cin>>t>>k;YH_print();while(t--){int n,m;cin>>n>>m;  if(n<m) cout<<ans[n][n]<<'\n';else cout<<ans[n][m]<<'\n';}return 0;
}

转载于:https://www.cnblogs.com/Patrickpwq/articles/9582002.html

【NOIP 2016】组合数问题相关推荐

  1. NOIP 2016 迟来的满贯

    17-03-22,雨 17-03-22,一个特别重要的日子 在这一天,本蒻攻克了NOIP 2016最难的一题,D1T2--天天爱跑步 实现了NOIP 2016的AK! YAYAYAYAYAYAY 自然 ...

  2. P6669 [清华集训2016] 组合数问题

    P6669 [清华集训2016] 组合数问题 题意: 给你n,m,k,问有多少对(i,j)满足K∣CijK|C_{i}^{j}K∣Cij​ (Cij是k的倍数C_{i}^{j}是k的倍数Cij​是k的 ...

  3. NOIP 2016 Day1 T3-换教室

    NOIP 2016 Day1 T3-换教室 题意 思路 代码 题目链接:换教室 题意 \;\;\;\; 有 nnn 节要上.每节课有两个教室同时在上,教室为 ci,dic_{i},d_{i}ci​,d ...

  4. NOIP 2016 提高组 初赛

    NOIP 2016 提高组 初赛 疑难点 学习 感悟. 一. 2.该题81容易看成81次按键,实际是屏幕上出现的第81个字符,实际按键次数超过81次. 3.异或,相同位上,数字相同取0,数字不同取1, ...

  5. Noip 2016 愤怒的小鸟 题解

    [NOIP2016]愤怒的小鸟 时间限制:1 s   内存限制:256 MB [题目描述] Kiana最近沉迷于一款神奇的游戏无法自拔. 简单来说,这款游戏是在一个平面上进行的. 有一架弹弓位于(0, ...

  6. NOIP 2016(不是游记)

    这是一场我不会忘记的比赛 因为它是oi生涯中迄今最失败的一场重要比赛 100+25+88+35+65+55=368 两周前开始停课,无论是模拟考还是初赛还是先修课的考试都给了自己很大的信心, 再加上做 ...

  7. Noip 2016 Day1 题解

    老师让我们刷历年真题, 然后漫不经心的说了一句:"你们就先做做noip2016 day1 吧" ...... 我还能说什么,,,,,老师你这是明摆着伤害我们啊2333333333 ...

  8. LUOGU P2827 蚯蚓 (noip 2016)

    传送门 解题思路 第一眼以为是一个二叉堆,直接上优先队列60分...后来听ztz11说有单调性,新加入的蚯蚓一定比原先在的蚯蚓长度长,开三个队列,分别放原先的长度,切掉后大的那一半,切掉后小的那一半. ...

  9. NOIP 2016【蚯蚓】

    好吧,我承认我是个智障-- 这道题一眼看上去就是个堆,然而实际上有单调性. 注意到,如果 \(q = 0\) 的话,将蚯蚓的左右两边分开丢进两个队列中,则两个队列都是单调不增的,因为每次取出的蚯蚓长度 ...

最新文章

  1. TVM 优化 ARM GPU 上的移动深度学习
  2. 十步,教你把Python运行速度提升 30%
  3. PYTORCH笔记 actor-critic (A2C)
  4. 转android项目开发 工作日志 2011.10.8--bundle类使用
  5. 电影院为何有散落的青瓜?
  6. 使用 ssh 命令来访问(登录/连接)远程服务器主机
  7. 微信Windows 3.3.0内测发布 可以刷朋友圈了
  8. scala案例_Scala案例类和案例对象深入(第2部分)
  9. 三层交换机和路由器有什么区别:
  10. 《畅玩NAS》第8章 ZeroTier组建局域网
  11. 使用SpringBoot一小时快速搭建一个简单后台管理(后端篇)
  12. 利用Python将Word试卷匹配转换为Excel表格
  13. 阿里云OSS存储实例
  14. 【Windows基础】NTFS文件系统
  15. 研发思维07----嵌入式智能产品安全认证必要经过
  16. Android 拨号键盘指令索引
  17. 安理工计算机学院官网,安理工计算机科学与工程学院导师介绍:张顺香
  18. 致信oa系统服务器ip,致信客户端服务器ip
  19. h5如何唤起地图App(vue+腾讯地图)
  20. 达索系统SIMULIA助力油气行业

热门文章

  1. 在python语言中定义私有成员变量的方法是_Python在类中有“私有”变量吗?
  2. mybatis plug 只查id_MyBatis Generator的一个问题引发对插件的修改
  3. goldendb mysql_golden数据库
  4. AcWing 2019. 拖拉机(双端BFS)
  5. spark-shell如何粘贴换行代码
  6. Tensorflow实现简单的手写数字神经网络模型
  7. VS不能设置断点可能的一个原因
  8. Linux下vmware安装部署
  9. apache   和Tomcat的区别
  10. OSC源创会【放码过来】环节精彩回顾