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. scala之method和function的区别

    在我没有学习scala的时候,主要用java和python做日常工作开发,印象中,没有特别的刻意的去区分method和function的区别,这个关系,正如我们日常生活中,没有刻意的去区分质量和重量. ...

  2. 使用UpdatePanel 页面脚本不起作用

    在后台中这样注册js方法 ScriptManager.RegisterStartupScript(this.Page, this.Page.GetType(), "", " ...

  3. 【shell】sort命令

    [root@andon ~]# sort 1 ##常用正序自动排序 101 paul 18 100 102 suan 11 99 103 peter 18 98 id name age score [ ...

  4. 【python】浅谈for...else...语句

    for循环可以和 else 子句同时使用(for...else).当迭代完for循环完整个列表失败后,会执行else语句.但循环中被 break 终止的情况下不会执行.如下例子所示: for i in ...

  5. nova分析(3)—— nova-api

    nova-api是nova对外提供Restful API的服务,Horizon.novaclient等均通过该api与nova进行通信. nova其实对外提供了多个api服务,包括下面这些服务: no ...

  6. mongodb基本语句使用

    mongodb学习:##mongodb基础##数据库常用命令##用户相关##修改.添加.删除集合数据##条件操作符##创建表 ------------------------------------- ...

  7. VoLTE、呼叫等待(保持)

    VoLTE 的出现是手机通话的革命,VoLTE带来更好通话质量,更快的接通时间,接近0掉线这些特点,还可以一边通话一边上网,一方面VoLTE需要运营商的支持,另外一方面也需要手机终端的支持. 什么手机 ...

  8. 75. Sort Colors

    Given an array with n objects colored red, white or blue, sort them so that objects of the same colo ...

  9. 黄聪:jquery mobile使用form进行post提交表单没有反应,显示空白页解决方案

    jquery mobile这货会自动用Ajax方式. 所以需要在表单form标签添加data-ajax="false"这个元素. <form method="pos ...

  10. laravel判断HTTP请求是否ajax

    if(Request->ajax()){ echo "AJAX"; }else{ echo '普通请求':}