递推 N循环问题
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
Output
Sample Input
2
1 3
2 3
Sample Output
3
3 解题思路:
求类似这种问题,把数带进去算几遍,其中必然存在一定的规律,或是函数关系,或是递归,
耐心写下几组,甚至几十组测试数据 ,你就会得到其中的联系
关键字:排列组合,杨辉三角
公式:a[i][j]=(a[i-1][j]+a[i-1][j-1])
第一列全为1,a[i][i]也为1. 代码如下:
#include "iostream"
#include "stdio.h"
#include "string.h"
using namespace std;
int a[2004][2004];
int main()
{
int n,m,k,i,j;
memset(a,0,sizeof(a)); for( i=1;i<=2000;i++)
{
a[i][0]=a[i][i]=1; for( j=1;j<i;j++)
a[i][j]=(a[i-1][j]+a[i-1][j-1])%1007; }
scanf("%d",&n);
while (n--)
{
scanf("%d%d",&m,&k);
printf("%d\n",a[k][m]);
}
return 0;
}
递推 N循环问题的更多相关文章
- 《剑指offer》递推与循环,栈和队列,回溯 (牛客10.27)
		
难度 题目 知识点 07. 斐波那契数列 递推递归 - 两变量写法- 08. 跳台阶 同上 09. 变态跳台阶 dp 10. 矩形覆盖 同上 05. 用两个栈实现队列 模拟 ☆ 20. 包含min函数 ...
 - C语言  分支与循环  递推思想    穷举  流程的转移控制
		
条件语句 开关控制语句(SWITCH语句) 象坐电梯一样,break是按的楼层,不加break则会一直执行下去. 上面程序有细节BUG,边界测试输入-5,105时由于整除会得到错误的结果. 解决方法: ...
 - EOJ Problem #3249 状态压缩+循环周期+反向递推
		
限量供应 Time limit per test: 4.0 seconds Time limit all tests: 4.0 seconds Memory limit: 256 megabytes ...
 - 再谈循环&迭代&回溯&递归&递推这些基本概念
		
循环:不断重复进行某一运算.操作. 迭代:不断对前一旧值运算得到新值直到达到精度.一般用于得到近似目标值,反复循环同一运算式(函数),并且总是把前一 次运算结果反代会运算式进行下一次运算 递推:从初值 ...
 - 从一道NOI练习题说递推和递归
		
一.递推: 所谓递推,简单理解就是推导数列的通项公式.先举一个简单的例子(另一个NOI练习题,但不是这次要解的问题): 楼梯有n(100 > n > 0)阶台阶,上楼时可以一步上1阶,也可 ...
 - UVa 11077 Find the Permutations(置换+递推)
		
题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=35431 [思路] 置换+递推 将一个排列看作一个置换,分解为k个循 ...
 - "红色病毒"问题 HDU  2065  递推+找循环节
		
题目连接: http://acm.hdu.edu.cn/showproblem.php?pid=2065 递推类题目, 可以考虑用数学方法来做, 但是明显也可以有递推思维来理解. 递推的话基本就是状态 ...
 - hdu1978(递推dp)
		
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1978 分析: 递推DP. dp[][]表示可以到达改点的方法数. 刚开始:外循环扫描所有点dp[x][ ...
 - CODE[VS]-数的计算-递推-天梯白银
		
题目描述 Description 我们要求找出具有下列性质数的个数(包含输入的自然数n): 先输入一个自然数n(n<=1000),然后对此自然数按照如下方法进行处理: 1.不作任何处理; 2.在 ...
 
随机推荐
- finder的隐藏文件&IOS虚拟机地址
			
在终端里输入下面命令即可让它们显示出来. defaults write com.apple.finder AppleShowAllFiles -bool true 如果想恢复隐藏,可以用这个命令: ...
 - 【VB.NET】文本框快捷键支持
			
我们知道VB.NET中的文本框是不支持Ctrl+A的快捷键的. 如果让它支持呢? Private Sub txtSQL_KeyDown(ByVal sender As Object, ByVal e ...
 - ZeroClipboard实现复制
			
今天利用ZeroClipboard实现了批量复制ip到剪贴版的公里,第一种方式总是有错,需要点击两次才能成功复制,第二种方法成功.在这里记录下,方法一: $('#copy_ips').zclip({ ...
 - 前端开发框架Bootstrap和KnockoutJS
			
江湖中那场异常惨烈的厮杀,如今都快被人遗忘了.当年,所有的武林同道为了同一个敌人都拼尽了全力,为数不多的幸存者心灰意冷,隐姓埋名,远赴他乡,他们将唯一的希望寄托给时间.少年子弟江湖老,红颜少女的鬓边也 ...
 - python迭代器与生成器
			
1.迭代器 iterator 迭代器是一种对象类型!可以由生成器生成! 迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束.迭代器的一大优点是不要求事先准备好整个迭代过程中所有的元素.迭 ...
 - ubuntu 开机显示错误:无法应用原保存的显示器配置
			
无法应用原保存的显示器配置CRTC 63:尝试 800x600@60Hz 模式输出在 1366x768@60Hz (通过 0)CRTC 63:尝试 2560x1600@60Hz 模式输出在 1366x ...
 - Hadoop HDFS编程 API入门系列之HdfsUtil版本1(六)
			
不多说,直接上代码. 代码 package zhouls.bigdata.myWholeHadoop.HDFS.hdfs2; import java.io.FileOutputStream;impor ...
 - Bootstrap修改input file默认样式
			
html部分 <div class="form-group"> <label class="col-sm-3 control-label"&g ...
 - linux查看访问windows共享目录NT_STATUS_DUPLICATE_NAME问题解决
			
linux查看访问windows共享目录NT_STATUS_DUPLICATE_NAME问题解决 [jason@superfreak ~]$ smbclient //powerhouse-smb.my ...
 - System.DateTime.Now的内容
			
?System.DateTime.Now{2016/10/09 15:19:12} Date: {2016/10/09 0:00:00} dateData: 985948826838121 ...