洛谷P1028动规算法
首先我们可以写一个递归
#include<bits/stdc++.h>
using namespace std;
long long n;
int main(){
long long f[1001];
memset(f,0,sizeof(f));
cin>>n;
for(int i=1;i<=n;i++)
{
for(int j=1;j<=i/2;j++)
{
f[i]+=f[j];
}
f[i]++;
}
cout<<f[n]<<endl;
return 0;
}
稍微修改一下代码,令其输出答案集A,效果如下
1
2
2
4
4
6
6
10
10
14
14
20
20
26
26
36
36
46
46
60
60
74
74
94
94
114
114
观察可知,答案集可以简化为序列B
1 2 4 6 10 14 20 26 36 46
继续观察得,
B[i]=B[i+1]/2+B[i-1]
B[i/2+1]=A[i];
代码实现如下:
#include<bits/stdc++.h>
using namespace std;
int main()
{
long long a[100000]={0,1,2,4,6,10},n;int nn;
cin>>n;
nn=(n+2)/2;
for(int i=2;i<=nn;i++)
a[i]=a[(i+1)/2]+a[i-1];
cout<<a[nn];
}
UPDATE
2019.5.11
测试一下博客
洛谷P1028动规算法的更多相关文章
- 洛谷P1352——动规
题目:https://www.luogu.org/problemnew/show/P1352 代码如下: #include<iostream> #include<cstdio> ...
- LCS(最长公共子序列)动规算法正确性证明
今天在看代码源文件求diff的原理的时候看到了LCS算法.这个算法应该不陌生,动规的经典算法.具体算法做啥了我就不说了,不知道的可以直接看<算法导论>动态规划那一章.既然看到了就想回忆下, ...
- 洛谷P1028数的计算
https://www.luogu.org/problemnew/show/P1028 只用递归会超时,需要用递归型动规,用一个数组保存已经算过的值,避免重复计算. 求数字为n的方案数的最优子结构为: ...
- 洛谷 P1028 数的计算【递推】
P1028 数的计算 题目描述 我们要求找出具有下列性质数的个数(包含输入的自然数n): 先输入一个自然数n(n<=1000),然后对此自然数按照如下方法进行处理: 1.不作任何处理; 2.在它 ...
- 洛谷P3805 [模板]Manacher算法 [manacher]
题目传送门 题目描述 给出一个只由小写英文字符a,b,c...y,z组成的字符串S,求S中最长回文串的长度. 字符串长度为n 输入输出格式 输入格式: 一行小写英文字符a,b,c...y,z组成的字符 ...
- 洛谷 P1028 数的计算
嗯... 首先这道题想到的就是递推.... 但是递推失败 (不知道自己是怎么想的 然后又想打一个暴力,但是数的最高位太难存储了,所以又放弃了(并且好像这个暴力大约500就会炸... 然后看了题解,才发 ...
- 洛谷--P1028 数的计算(递推)
题意:链接:https://www.luogu.org/problem/P1028 先输入一个自然数n (n≤1000) , 然后对此自然数按照如下方法进行处理: 不作任何处理; 在它的左边加上一个自 ...
- 洛谷P1028 数的计算 题解 动态规划入门题
题目链接:https://www.luogu.com.cn/problem/P1028 题目描述 我们要求找出具有下列性质数的个数(包含输入的自然数 \(n\) ): 先输入一个自然数 \(n(n \ ...
- 洛谷P1028 数的计算
https://www.luogu.org/problem/P1028 #include<cstdio> using namespace std; int main(){ ,i,f[]; ...
随机推荐
- OpenGL学习--02--绘制一个红色三角形
The OpenGL buffer is created, bound, filled and configured with the standard functions (glGenBuffers ...
- maven windows环境nexus3.0私服搭建
下载 nexus3.x.x 需要JDK1.8版本到sonatype官网下载开源免费的OSS版本,OSS即为Open Source Software.下载地址:https://www.sonatype. ...
- oracle截取字符串去掉字段末尾指定长度的字符
lengthb(string)计算string所占的字节长度:返回字符串的长度,单位是字节 length(string)计算string所占的字符长度:返回字符串的长度,单位是字符 eg: //去掉该 ...
- 安装Window Server 2008的些配置
上次安装window server2008,由于server2008需要设置很多东西,不然用起来很不爽,就说IE吧,每次随便打开一个网页都要弹出n多窗口出来叫你添加到信任域里面!太烦人了![下面有解决 ...
- Flask 参数简介
我们都知道学习了Flask的时候它里面的参数是有很多种的参数 都是需要相互进行调用传递的 今天就简要分析一些常见的参数 首先导入Flask之后看 源码 from flask import Flas ...
- 使用Instruments中的CoreAnimation分析动画
使用Instruments中的CoreAnimation分析动画 1. 打开Instruments中的CoreAnimation 2. 运行前的准备工作 要注意勾选以下选项,便于调试 3. 运行与调试 ...
- 解决UITableView在iOS7中UINavigationController里的顶部留白问题
解决UITableView在iOS7中UINavigationController里的顶部留白问题 出现问题时候的截图: 源码: 用到的类: UIViewController+TitleTextAtt ...
- 工具类-vim在shell中卡死的情况
time:2015/11/35 在xshell下面使用vim编辑,有时候会出现突然卡死的情况.但是如果重新开一个终端的话,打开文件又是一大堆问题,今天又碰到了,搜了一下就找到一个帮助了[1] 原因:按 ...
- 线性规划 Matlab
线性规划的 Matlab 解法 形式 s.t.( subject to) c和 x为n 维列向量, A. Aeq 为适当维数的矩阵,b .beq为适当维数的列向 量. 函数: linprog(c,A, ...
- jQuery: 刨根问底 attr and prop两个函数的区别
In this short post I will explain the difference between attributes and properties in HTML. The .pro ...