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青蛙过河的更多相关文章

  1. ooj 1066 青蛙过河DP

    http://121.249.217.157/JudgeOnline/problem.php?id=1066 1066: 青蛙过河 时间限制: 1 Sec  内存限制: 64 MB提交: 58  解决 ...

  2. [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 ...

  3. HRBUST 1186 青蛙过河 (思路错了)

    在河上有一座独木桥,一只青蛙想沿着独木桥从河的一侧跳到另一侧.在桥上有一些石子,青蛙很讨厌踩在这些石子上.由于桥的长度和青蛙一次跳过的距离都是正整数,我们可以把独木桥上青蛙可能到达的点看成数轴上的一串 ...

  4. 【状态压缩DP】NOIP2005-river过河

    [问题描述] 在河上有一座独木桥,一只青蛙想沿着独木桥从河的一侧跳到另一侧.在桥上有一些石子,青蛙很讨厌踩在这些石子上.由于桥的长度和青蛙一次跳过的距离都是正整数,我们可以把独木桥上青蛙可能到达的点看 ...

  5. 洛谷 P1244 青蛙过河

    P1244 青蛙过河 题目描述 有一条河,左边一个石墩(A区)上有编号为1,2,3,4,…,n的n只青蛙,河中有k个荷叶(C区),还有h个石墩(D区),右边有一个石墩(B区),如下图所示.n只青蛙要过 ...

  6. 洛谷P1244 [NOI2000] 青蛙过河 [2017年4月计划 动态规划07]

    P1244 青蛙过河 题目描述 有一条河,左边一个石墩(A区)上有编号为1,2,3,4,…,n的n只青蛙,河中有k个荷叶(C区),还有h个石墩(D区),右边有一个石墩(B区),如下图所示.n只青蛙要过 ...

  7. 【JavaScript】Leetcode每日一题-青蛙过河

    [JavaScript]Leetcode每日一题-青蛙过河 [题目描述] 一只青蛙想要过河. 假定河流被等分为若干个单元格,并且在每一个单元格内都有可能放有一块石子(也有可能没有). 青蛙可以跳上石子 ...

  8. NOIP 2005 青蛙过河

    做题记录:2016-08-10 21:58:09 题目描述 在河上有一座独木桥,一只青蛙想沿着独木桥从河的一侧跳到另一侧.在桥上有一些石子,青蛙很讨厌踩在这些石子上.由于桥的长度和青蛙一次跳过的距离都 ...

  9. 趣味算法——青蛙过河(JAVA)

    青蛙过河是一个非常有趣的智力游戏,其大意如下: 一条河之间有若干个石块间隔,有两队青蛙在过河,每队有3只青蛙,这些青蛙只能向前移动,不能向后移动,且一次只能有一只青蛙向前移动.在移动过程中,青蛙可以向 ...

随机推荐

  1. 08socket编程

    有个SO_REUSEADDR值得注意一下: 服务器端尽可能使用SO_REUSEADDR 在绑定之前尽可能调用setsockopt来设置SO_REUSEADDR套接字选项. 使用SO_REUSEADDR ...

  2. LintCode "Delete Digits"

    Greedy: remove earliest down-edge: like "54", "97". class Solution { public: /** ...

  3. Python 函数的创建和调用

    >>> movies =[ "the holy grail", 1975,"terry jones",91, ["graham ch ...

  4. docker的一些用法

    复制文件,复制进去和复制出来一样用 docker cp 源文件 容器id:路径/目标文件 保存镜像 docker commit 容器id 名字 共享文件(加载vol) docker run -v 宿主 ...

  5. TextBox仿Foxmail收件人删除效果

    场景: 发邮件,添加收件人后,删除时直接删除整个收件人. 添加事件: 文本框实现,需要添加以下4个事件: txtQsdw_TextChanged txtQsdw_MouseDown txtQsdw_M ...

  6. Android.mk

    Introduction: Android.mk编译文件是用来向Android NDK描述你的C,C++源代码文件的, 这篇文档描述了它的语法.在阅读下面的内容之前,假定你已经阅读了docs/OVER ...

  7. CE_现金银行对账单的手工导入和调节(案例)

    2014-07-14 Created By BaoXinjian

  8. BIP_Oracle Erp标准银行接口XML文件(案例)(待整理)

    2014-07-07 Created By BaoXinjian  

  9. Mac下的eclipse按住ctrl点击无法查看类文件

    问题主要是项目的.project或者.build文件有问题,github上check的另一个项目就没有这样的现象,可以新建一个项目,然后把新建项目的这两个文件一一替换无法ctrl点击的项目中的文件. ...

  10. ASP 发送邮件

    ASP发送邮件源码 ASP通过调用API接口发送邮件 <% ' '网吧数据 'www.zgw8.com '邮件发送接口调用demo ' ' '获取网页源代码函数 '=============== ...