循环多少次?

Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 2479    Accepted Submission(s): 907

Problem Description
我们知道,在编程中,我们时常需要考虑到时间复杂度,特别是对于循环的部分。例如,
如果代码中出现
for(i=1;i<=n;i++) OP ;
那么做了n次OP运算,如果代码中出现
fori=1;i<=n; i++)
  for(j=i+1;j<=n; j++) OP;
那么做了n*(n-1)/2 次OP 操作。
现在给你已知有m层for循环操作,且每次for中变量的起始值是上一个变量的起始值+1(第一个变量的起始值是1),终止值都是一个输入的n,问最后OP有总共多少计算量。
Input
有T组case,T<=10000。每个case有两个整数m和n,0<m<=2000,0<n<=2000.
Output
对于每个case,输出一个值,表示总的计算量,也许这个数字很大,那么你只需要输出除1007留下的余数即可。
Sample Input
  
2 1 3 2 3
Sample Output
  
3 3
Author
wangye
Source
2008 “Insigma International Cup” Zhejiang Collegiate Programming Contest - Warm Up(4)
解释:
容易想到,对于每一个n,m,OP进行的操作次数为n*(n-1)*(n-2)*.....(n-m+1)/m*(m-1)*...*1,即n!(n-m)!/m!,典形的组合结果,但是,结果很大,
在计算机中,经常用另一个迭代式取代直接用阶乘的办法求组合,组合公式:C(n,m)=C(n-1,m-1)+C(n-1,m),初值C(n,0)=C(n,n)=1。
//组合公式:C(n,m)=C(n-1,m-1)+C(n-1,m)
//初值C(n,0)=C(n,n)=1
#include <iostream>
using namespace std;int C[2001][2001];
void Set()
{int i,j;for (i=0; i <= 2000; ++i)C[i][0] = C[i][i] = 1;for (j=1; j <= 2000; ++j){for (i=j+1; i <= 2000; ++i){C[i][j] = (C[i-1][j-1] + C[i-1][j]) % 1007;}}
}
int main()
{
#ifndef ONLINE_JUDGEfreopen("2.txt","r",stdin);
#endifSet();int t,m,n;cin >> t;while (t--){cin >> m >> n;cout << C[n][m] << endl;}return 0;
}

HDU1799-组合公式变形相关推荐

  1. 完美解决Visio中MathType公式变形的问题以及visio图转pdf之后公式不显示的问题

    很多博主说的转换为打印是可以解决公式变形的问题,但是放大后会有些地方模糊.然后我发现啊!!! 插入公式前先插入矩形框,把公式和矩形框组合起来,就可以了,完美解决,不会糊,也不会变形!!!Nice

  2. 蓝桥杯-组合公式求值(java)

    算法提高 组合公式求值 时间限制:1.0s 内存限制:256.0MB问题描述给定n, m,求:输入格式输入一行,包含两个整数n, m.输出格式输出一行,包含求得的值,由于答案可能非常大,请输出此公式除 ...

  3. 排列公式和组合公式_排列与组合:排列公式与组合公式之间有什么区别?

    排列公式和组合公式 Here's the short version. 这是简短的版本. Let's take ringing bells in a church as an example. 让我们 ...

  4. Visio里Mathtype公式变形问题解决

    直接从word或者ppt复制MathType公式到Visio里可能会发生公式的变形.查找了一下解决办法,记录一下. 建议不要只要从其他office软件直接复制过来,第一步,找到Visio工具栏的插入, ...

  5. 阶乘、排列、组合 公式计算

    阶乘.排列.组合 公式计算 引自:http://wy19880318.blog.163.com/blog/static/3615147220090385546818/ ... 阶乘.排列.组合 公式计 ...

  6. CodeForces - 1008D - Pave the Parallelepiped (容斥原理+重复组合公式+状态压缩+思维)

    题目链接: http://codeforces.com/problemset/problem/1008/D 前置知识: 1.容斥原理:(见百度百科) https://baike.baidu.com/i ...

  7. 排列组合公式 与24点编程游戏

    排列组合公式 此外, 规定0! = 1. 24点游戏编程问题 问题描述 你有 4 张写有 1 到 9 数字的牌.你需要判断是否能通过 *,/,+,-,(,) 的运算得到 24. 示例 1: 输入: [ ...

  8. 从word中复制mathtype公式到在visio2013公式变形

    问题: 1.使用visio2013绘制方框图时,从word中复制mathtype公式到在visio2013中,然后对双击公式并修改,复制该公式,发生变形,如下所示 根据其他答主的方法,双击该公式进行修 ...

  9. word中mathtype公式变形问题解决方法

    Word 里第三方插件生成的公式变形了咋整? 很多人都用第三方插件在 Word 文档中添加.编辑公式,然而,这些人几乎都会遇到同一个问题:公式为什么自己变形了?这种变形还是随机的,首先是时间上的随机, ...

最新文章

  1. 薪资1.5万,学习IT让我重新找到方向
  2. web.config/app.config敏感数据加/解密的二种方法
  3. 使用阿里云ACM简化你的Spring Cloud微服务环境配置管理
  4. bzoj3715 [PA2014]Lustra
  5. linux cp源码_为Linux的cp和mv命令添加进度条
  6. gem install sass 本地配置和淘宝源无效的解决办法
  7. Django+xadmin 打造线上教育平台(二)-1(旧)
  8. leetcode 1223 python
  9. pygame小游戏(接球小游戏)
  10. git使用之搭建git仓库
  11. MySQL 批量添加
  12. 删除MySql表中的大量记录后,文件不变小的解决方法
  13. 【转】探秘Java中的String、StringBuilder以及StringBuffer
  14. WebSocket之GoEasy框架
  15. ami编码设计流程图_AMI码型变换
  16. This Product is covered by one or more of the folloWing patents
  17. 前缀im-,in-,il-,ir-的使用规律
  18. UNIX发展史(BSD,GNU,linux)
  19. 设计模式|职责链模式--流程状态审批(枚举实现)
  20. 无人机宽带自组网技术(随笔)

热门文章

  1. 计网 | PGP协议实验(邮件加密解密)
  2. 基于嵌入式ARM工控主板与X86工控主板的比较
  3. Magento的订单相关的SQL(订单编号、创建时间、总金额、收货人、收货人地址、收货人城市、州或省(简称)、收货邮编、收货人电话、付款人邮箱)
  4. 浏览器主页被360/2345等劫持
  5. 子类继承多个父类总结
  6. 天文学论文写作时需要注意的点
  7. centos7安装mysql失败
  8. 正则表达式学习及小练习
  9. 主板usb接口全部失灵_主机usb接口没反应,台式电脑usb接口全部失灵
  10. 【ant-design】分页器英文如何转中文