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. php日期时间函数

    1,年-月-日echo date('Y-m-j');2007-02-6echo date('y-n-j');07-2-6大写Y表示年四位数字,而小写y表示年的两位数字:小写m表示月份的数字(带前导), ...

  2. Oracle数据库中实现mysql数据库中auto-increment功能

    在Mysql数据库中,想要实现一条数据的自增一功能(即插入此数据时填写null即可,系统自动+1),可直接在所在列使用语句auto-increment. id int primary key auto ...

  3. 剑指offer系列47---翻转单词顺序

    [题目]输入“I am a student.”>>>“.tneduts a ma I”.>>输出:student. a am I package com.exe9.off ...

  4. 剑指offer系列37----数据流中的中位数

    [题目]如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值, * 那么中位数就是所有数值排序之后位于中间的数值. package com.exe8.offer; import java.uti ...

  5. 读书笔记:Ross:概率模型导论:方差和协方差

    例2.34 考虑N个人,一些人赞同某个提议,另一些人反对.假定Np个人赞同,N-Np人反对,p未知.现在想要通过随机选取n个人调查他们的态度,并由此来估计总体中赞同这个提议的人员比例p. 设Xi=1表 ...

  6. item30,最小的k个数

    剑指offer给出两类方法: 1,借助快排的思想,需要修改输入数组的元素,时间复杂度O(n) 2,借助STL中set或者multiset,因为它们的底层数据结构是红黑树实现的,插入数据时间复杂度为O( ...

  7. PHP写一段代码,确保多个进程同时写入一个文件成功

    这个需求是在软件设计过程常见的加锁.学计算机的同学都应该知道,这个是在<计算机操作系统>课程上有这个知识点.主要要考虑的是进程的同步,也就是进程对资源的互斥访问.OK,用程序说话吧! &l ...

  8. 黄聪:MYSQL5.6缓存性能优化my.ini文件配置方案

    使用MYSQL版本:5.6 [client] …… default-character-set=gbk default-storage-engine=MYISAM max_connections=10 ...

  9. Zookeeper + Hadoop2.6 集群HA + spark1.6完整搭建与所有参数解析

    废话就不多说了,直接开始啦~ 安装环境变量: 使用linx下的解压软件,解压找到里面的install 或者 ls 运行这个进行安装 yum install gcc yum install gcc-c+ ...

  10. 工作中Linux常用命令

    rpm -qa|grep -i mysql rpm -ev mysql-server-5.1.73-5.el6_6.x86_64 如果报: error: Failed dependencies: li ...