TYVJ P1015 公路乘车 &&洛谷 P1192 台阶问题 Label:dp
题目描述
有N级的台阶,你一开始在底部,每次可以向上迈最多K级台阶(最少1级),问到达第N级台阶有多少种不同方式。
输入输出格式
输入格式:
输入文件的仅包含两个正整数N,K。
输出格式:
输入文件stair.out仅包括1个正整数,为不同方式数,由于答案可能很大,你需要输出mod 100003后的结果。
输入输出样例
5 2
8
说明
对于20%的数据,有N ≤ 10, K ≤ 3;
对于40%的数据,有N ≤ 1000;
对于100%的数据,有N ≤ 100000,K ≤ 100。
代码
#include<iostream>
#include<cstring>
#include<cstdio>
#include<algorithm>
using namespace std;
int n,k;
int f[];
int main(){
scanf("%d%d",&n,&k);
f[]=; for(int j=;j<=n;j++){
for(int i=;i<=k;i++){
f[j]=(f[j]+f[j-i])%;
}//这里少了一句话,j应该大于或等于i
}
printf("%d\n",f[n]);
return ;
}#include<iostream>
#include<cstring>
#include<cstdio>
#include<algorithm>
using namespace std;
int n,k,f[];
int main(){
scanf("%d%d",&n,&k);
f[]=;
for(int i=;i<=k;i++){
for(int j=i;j<=n;j++){
f[j]=(f[j]+f[j-i])%;
}
for(int ll=;ll<=n;ll++){
printf("%d ",f[ll]);
}puts("");
}
printf("%d\n",f[n]);
return ;
}不满足后效性的错误代码
看题解说是斐波那契数列变形,dp也可以啊
感觉和TYVJ 1015是差不多的
#include<cmath>
#include<cstdio>
#include<vector>
#include<cstring>
#include<algorithm>
#define inf 1000000000
using namespace std;
int n;
int m[],f[];
int main()
{
memset(f,,sizeof(f));
f[]=;
for(int i=;i<=;i++)
scanf("%d",&m[i]);
scanf("%d",&n);
for(int i=;i<=;i++)
for(int j=;j<=n;j++)
if(f[j]<inf)
f[j+i]=min(f[j+i],f[j]+m[i]);
printf("%d\n",f[n]);
return ;
}Fi表示移动i公里的最小代价Fi表示移动i公里的最小代价则Fi=min{fi−j+mj}
TYVJ P1015 公路乘车 &&洛谷 P1192 台阶问题 Label:dp的更多相关文章
- 洛谷P1192 台阶问题【dp递归】
有NN级的台阶,你一开始在底部,每次可以向上迈最多KK级台阶(最少11级),问到达第NN级台阶有多少种不同方式. 输入输出格式 输入格式: 两个正整数N,K. 输出格式: 一个正整数,为不同方式数,由 ...
- 洛谷P1192台阶问题(DP)
题目描述 有NNN级的台阶,你一开始在底部,每次可以向上迈最多KKK级台阶(最少111级),问到达第NNN级台阶有多少种不同方式. 输入格式 两个正整数N,K. 输出格式 一个正整数,为不同方式数,由 ...
- [TYVJ] P1015 公路乘车
公路乘车 描述 Description 一个特别的单行街道在每公里处有一个汽车站.顾客根据他们乘坐汽车的公里使来付费.例如样例的第一行就是一个费用的单子. 没有一辆车子行驶超过10公里,一个顾客打算行 ...
- 洛谷 P1192 台阶问题
P1192 台阶问题 题目描述 有N级的台阶,你一开始在底部,每次可以向上迈最多K级台阶(最少1级),问到达第N级台阶有多少种不同方式. 输入输出格式 输入格式: 输入文件的仅包含两个正整数N,K. ...
- 洛谷P1192 台阶问题【记忆化搜索】
题目:https://www.luogu.org/problemnew/show/P1192 题意: 给定n和k,一个人一次可以迈1~k步,问走n步有多少种方案. 思路: 本来傻乎乎上来就递归,显然会 ...
- 洛谷P1192台阶问题
题目描述 有NN级的台阶,你一开始在底部,每次可以向上迈最多KK级台阶(最少11级),问到达第NN级台阶有多少种不同方式. 输入格式 两个正整数N,K. 输出格式 一个正整数,为不同方式数,由于答案可 ...
- 洛谷 P5279 - [ZJOI2019]麻将(dp 套 dp)
洛谷题面传送门 一道 dp 套 dp 的 immortal tea 首先考虑如何判断一套牌是否已经胡牌了,考虑 \(dp\).我们考虑将所有牌按权值大小从大到小排成一列,那我们设 \(dp_ ...
- 洛谷2344 奶牛抗议(DP+BIT+离散化)
洛谷2344 奶牛抗议 本题地址:http://www.luogu.org/problem/show?pid=2344 题目背景 Generic Cow Protests, 2011 Feb 题目描述 ...
- Lightning Conductor 洛谷P3515 决策单调性优化DP
遇见的第一道决策单调性优化DP,虽然看了题解,但是新技能√,很开森. 先%FlashHu大佬,反正我是看了他的题解和精美的配图才明白的,%%%巨佬. 废话不多说,看题: 题目大意 已知一个长度为n的序 ...
随机推荐
- Jquery获取数据并生成下拉菜单
<script type="text/javascript"> $(document).ready(function() { GetByJquery(); $(&quo ...
- css3 变形(transform)、转换(transition)和动画(animation)
http://www.w3cplus.com/content/css3-transform/ 在CSS3中transform主要包括以下几种:旋转rotate.扭曲skew.缩放scale和移动tr ...
- 【转】ByteArrayOutputStream和ByteArrayInputStream详解
ByteArrayOutputStream类是在创建它的实例时,程序内部创建一个byte型别数组的缓冲区,然后利用ByteArrayOutputStream和ByteArrayInputStream的 ...
- linux中pip安装步骤与使用详解
pip类似RedHat里面的yum,安装软件非常方便.本节详细介绍pip的安装.以及使用方法,希望文章对各位了解pip的安装与使用带来帮助. 1.pip下载安装1.1 pip下载 代码如下 复制代码 ...
- chrome浏览器关闭标签页面
chrome浏览器关闭标签页提示:Scripts may close only the windows that were opened by it. 解决办法:通过open方法进行关闭. open( ...
- 如何分割一个utf8字符串(保证单个汉字的完整性)
std::list<std::string> split_utf8_string(const std::string& text) { std::list<std::stri ...
- iOS viewDidAppear 和 viewWillAppear
今天发现,如果用navigation push一个controller,那么从动画开始就调用viewwillappear,动画全部停止才会调用viewDidAppear,不知道是否正确,先做记录,带验 ...
- Java集合框架中Map接口的使用
在我们常用的Java集合框架接口中,除了前面说过的Collection接口以及他的根接口List接口和Set接口的使用,Map接口也是一个经常使用的接口,和Collection接口不同,Map接口并不 ...
- Java for LeetCode 171 Excel Sheet Column Number
Related to question Excel Sheet Column Title Given a column title as appear in an Excel sheet, retur ...
- codeforces B. Xenia and Ringroad 解题报告
题目链接:http://codeforces.com/problemset/problem/339/B 题目理解不难,这句是解题的关键 In order to complete the i-th ta ...