DP Hrbust1186青蛙过河
http://acm.hrbust.edu.cn/index.php?m=ProblemSet&a=showProblem&problem_id=1186
#include<stdio.h>
#include<algorithm>
#include<iostream>
#include<string.h>
using namespace std;
int flag[];//记录该点是否有石子
int dp[];//dp[i]表示走到i点所需要的最少石子数目
int main()
{
int l,s,t,n;
while(cin>>l>>s>>t>>n){ memset(flag,,sizeof(flag));
int k;
for(int i=;i<n;i++){
cin>>k;
flag[k]=;
} memset(dp,-,sizeof(dp));
dp[]=;//初始位置
for(int i=s;i<=l+t-;i++){对所有可能走到的点i进行遍历
for(int j=i-t;j<=i-s;j++){对所有可能到达i的点遍历
if(j>=&&dp[j]!=-){
if(dp[i]==-)dp[i]=dp[j]+flag[i];
else dp[i]=min(dp[i],dp[j]+flag[i]);
}
}
}
int mixn=;
for(int i=l;i<=l+t-;i++){
if(dp[i]!=-&&mixn>dp[i])
mixn=dp[i];
}
cout<<mixn<<endl;
}
}
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
int l,s,t,n;
int DP[]={}; int main()
{
while(~scanf("%d%d%d%d",&l,&s,&t,&n))
{
memset(DP,,sizeof(DP));
for(int i=;i<=n;i++)
{
int temp;
scanf("%d",&temp);
DP[temp]=;
}
for(int i=l-t-;i>=;i--)
{
int tmp=DP[i+s];
for(int j=s+;j<=t;j++)
{
tmp=min(tmp,DP[i+j]);
}
DP[i]+=tmp;
}
printf("%d\n",DP[]);
}
return ;
}
DP Hrbust1186青蛙过河的更多相关文章
- ooj 1066 青蛙过河DP
http://121.249.217.157/JudgeOnline/problem.php?id=1066 1066: 青蛙过河 时间限制: 1 Sec 内存限制: 64 MB提交: 58 解决 ...
- [LeetCode] Frog Jump 青蛙过河
A frog is crossing a river. The river is divided into x units and at each unit there may or may not ...
- HRBUST 1186 青蛙过河 (思路错了)
在河上有一座独木桥,一只青蛙想沿着独木桥从河的一侧跳到另一侧.在桥上有一些石子,青蛙很讨厌踩在这些石子上.由于桥的长度和青蛙一次跳过的距离都是正整数,我们可以把独木桥上青蛙可能到达的点看成数轴上的一串 ...
- 【状态压缩DP】NOIP2005-river过河
[问题描述] 在河上有一座独木桥,一只青蛙想沿着独木桥从河的一侧跳到另一侧.在桥上有一些石子,青蛙很讨厌踩在这些石子上.由于桥的长度和青蛙一次跳过的距离都是正整数,我们可以把独木桥上青蛙可能到达的点看 ...
- 洛谷 P1244 青蛙过河
P1244 青蛙过河 题目描述 有一条河,左边一个石墩(A区)上有编号为1,2,3,4,…,n的n只青蛙,河中有k个荷叶(C区),还有h个石墩(D区),右边有一个石墩(B区),如下图所示.n只青蛙要过 ...
- 洛谷P1244 [NOI2000] 青蛙过河 [2017年4月计划 动态规划07]
P1244 青蛙过河 题目描述 有一条河,左边一个石墩(A区)上有编号为1,2,3,4,…,n的n只青蛙,河中有k个荷叶(C区),还有h个石墩(D区),右边有一个石墩(B区),如下图所示.n只青蛙要过 ...
- 【JavaScript】Leetcode每日一题-青蛙过河
[JavaScript]Leetcode每日一题-青蛙过河 [题目描述] 一只青蛙想要过河. 假定河流被等分为若干个单元格,并且在每一个单元格内都有可能放有一块石子(也有可能没有). 青蛙可以跳上石子 ...
- NOIP 2005 青蛙过河
做题记录:2016-08-10 21:58:09 题目描述 在河上有一座独木桥,一只青蛙想沿着独木桥从河的一侧跳到另一侧.在桥上有一些石子,青蛙很讨厌踩在这些石子上.由于桥的长度和青蛙一次跳过的距离都 ...
- 趣味算法——青蛙过河(JAVA)
青蛙过河是一个非常有趣的智力游戏,其大意如下: 一条河之间有若干个石块间隔,有两队青蛙在过河,每队有3只青蛙,这些青蛙只能向前移动,不能向后移动,且一次只能有一只青蛙向前移动.在移动过程中,青蛙可以向 ...
随机推荐
- 基于jQuery动态创建html元素
在做web前端开发的时候,经常遇到一些数据多少或则类型不能在运行之前就确定下来的情况,此时,数据的展示,就要借助于动态创建html元素来展示了. 常见的动态创建HTML元素的方式,有如下几种,大体都差 ...
- zend studio 13 curl 请求本机地址 无法跟踪调试的问题解决方案。。。(chrome等浏览器调试原理相同)
方案如下: <?php $ch = curl_init (); curl_setopt ($ch, CURLOPT_URL, 'http://YOUR-SITE.com/your-script. ...
- [tty与uart]理解线路规程的作用
转自:http://biancheng.dnbcw.info/linux/336240.html Linux OS的设备驱动有相当经典的抽象思想以及分层思想.与通信世界里面的思想相一致. 一.在Lin ...
- source insight 里编辑的时候,每次粘贴后,光标停留在粘贴内容的左面
在source insight 里编辑的时候,每次粘贴后,光标停留在粘贴内容的左面.我想把它设定为 粘贴后,光标移动倒粘贴内容的右面. 该怎么做? 这是个设置问题,按照下面的步骤设定就可以了. Opt ...
- (二)java特征
java的核心是面向对象,与之相对的是面向过程的编程,在对整个java编程没有足够的理解和运用的情况下恐怕没办法很好的理解这两个概念. 在我的初步理解中,写一个程序就例如做一件事情,面向过程的 ...
- Lnmp环境的自搭建
### 备选#### 安装开发者工具包 (简约版的可能要安装一下) yum groupinstall "Development tools" ########## 1.准备 php ...
- eclipse常用插件安装
打开资源文件所在目录 EasyExplorer 下载:http://sourceforge.net/projects/easystruts/ 直接拷贝到%ECLIPSE_HOME%\plugins 或 ...
- Linux使用笔记: 定制core dump文件的文件名
在开发过程中,当一个Linux程序异常退出时,我们可以通过core文件来分析它异常的详细原因.缺省情况下,Linux在程序异常时不产生core文件,要想让程序异常退出时产生core dump文件,需要 ...
- Spark读写Hbase中的数据
def main(args: Array[String]) { val sparkConf = new SparkConf().setMaster("local").setAppN ...
- PLSQL_查询已执行SQL的绑定参数(案例)
2014-12-19 Created By BaoXinjian