2011百度之星 复赛(下)第一题
2011-06-19 22:44
232 查看
// BDFS2_1.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <iostream> using namespace std; #define MAX 1000005 #define min(x,y) ((x)<(y)?(x):(y)) #define INF 99999999 int h[MAX]; int n; //bool couldJump[MAX][MAX]; int dp[MAX];//d第0点往j点跳 bool couldJump(int x,int y){ if(y<=x)return false; for(int i=x+1;i<y;i++){ if(h[i]>=h[x]&&h[i]>=h[y])return false; } if(y-x>h[x])return false; return true; } int main(int argc, char* argv[]) { freopen("i://input.txt","r",stdin); int i,j; scanf("%d",&n); for(i=0;i<n+1;i++) scanf("%d",h+i); dp[0]=0; for(j=1;j<=n;j++){ dp[j]=INF; } for(i=1;i<=n;i++){ for(int j=i-1;j>=0;j--){ if(couldJump(j,i)){ int ti = 0; if(h[j]<=h[i])ti=h[i]-h[j]; if(dp[j]+ti<dp[i]) dp[i]=dp[j]+ti; } } } printf("%d\n",dp ); return 0; }
相关文章推荐
- 2011百度之星B第一题
- NOIP2011-普及组复赛-第一题-数字反转
- 2011百度之星第一题
- [原]图标排列-2011百度之星初赛第一题解答
- NOIP2011-普及组复赛模拟试题-第一题-NBA总冠军
- hdu 6114 百度之星复赛B T1
- 2017 百度之星复赛题解 01、03、05
- 2017百度之星 复赛
- 2014百度之星资格赛第一题
- 【百度之星2014~复赛)解题报告】The Query on the Tree
- hdu5715 XOR 游戏 [2016百度之星复赛D题]
- hdu5714 百度之星复赛C
- 2014百度之星复赛解题报告:Query on the tree
- 2007年百度之星复赛试题
- NOIP2011复赛DAY1
- NOIP 2011 提高组 复赛 day2 factor 计算系数
- HDU5259(百度之星复赛1002)——弹吉他(DP)
- NOIP2011-普及组复赛模拟试题-第二题-买票
- 2011百度之星B第三题
- HDU 4091 Zombie’s Treasure Chest(2011ACM上海赛区预选赛第一题)