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的序 ...
随机推荐
- FZU 1649 Prime number or not米勒拉宾大素数判定方法。
C - Prime number or not Time Limit:2000MS Memory Limit:32768KB 64bit IO Format:%I64d & % ...
- Linux lsof详解
简介 lsof(list open files)是一个列出当前系统打开文件的工具.在linux环境下,任何事物都以文件的形式存在,通过文件不仅仅可以访问常规数据,还可以访问网络连接和硬件.所以如传输控 ...
- 通过JS语句判断WEB网站的访问端是电脑还是手机
通过JS语句判断WEB网站的访问端是电脑还是手机,以显示不同的页面! 目录腾讯网的适配代码如何判断访问网站的机器类型-如何判断ipadJS 判断浏览器客户端类型(ipad,iphone,android ...
- cmd的rd命令简单解析
我们知道在Windows下cmd命令行中"rd 文件夹名称"可以删除空目录,"del 文件名"可以删除文件,那么怎么删除一个非空文件夹呢,命令如下: 比如删除文 ...
- FZU 2148 moon game (计算几何判断凸包)
Moon Game Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Submit St ...
- HDU2044 小蜜蜂斐波那契
一只小蜜蜂... Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Su ...
- Window环境下Python和Django的安装
转载地址:http://blog.csdn.net/haoni123321/article/details/7593821 1.下载python,本文使用python-2.7.2.msi 2.下载dj ...
- POSIX线程--同时执行
//#define _REENTRANT//#define _POSIX_C_SOURCE#include <iostream>#include <string>#includ ...
- Material Design入门
本文主要包括以下内容 ToolBar的使用 RecyclerView的定义与使用 ToolBar 风格 (style) 界面 (layout) 程序 (java) 首先自定义一个theme,并将App ...
- php 获取当前时间
<?php echo $showtime=date("Y-m-d H:i:s");?>