1077. [NOIP2010冲刺六] 数列游戏
2013-07-27 19:57
260 查看
【题目描述】
小M很喜欢找点游戏自娱自乐。有一天,她在纸上写了一串数字:1,1,2,5,4。接着她擦掉了一个1,结果发现剩下1,2,4都在自己所在的位置上,即1在第1位,2在第2位,4在第4位。她希望擦掉某些数后,剩下的数列中在自己位置上的数尽量多。她发现这个游戏很好玩,于是开始乐此不疲地玩起来……不过她不能确定最多能有多少个数在自己的位置上,所以找到你,请你帮忙计算一下!
接下来一行为n个用空格隔开的正整数,第i行表示数Ai。
1 1 2 5 4
对于60%的数据,n≤100;
对于100%的数据,n≤l000
View Code
代码分析:
其实该题就是求最长递增子序列;只不过是加了一些附加的条件;
首先,应该是该元素的值应该大于等于该元素的下标;否则不行,即赋值为0;
其次,元素之差要小于等于下标之差;
在上边这些条件下找出DP数组中第i个元素前的最大值加1赋给dp[i];
最后在dp数组中寻找最大值然后输出;
小M很喜欢找点游戏自娱自乐。有一天,她在纸上写了一串数字:1,1,2,5,4。接着她擦掉了一个1,结果发现剩下1,2,4都在自己所在的位置上,即1在第1位,2在第2位,4在第4位。她希望擦掉某些数后,剩下的数列中在自己位置上的数尽量多。她发现这个游戏很好玩,于是开始乐此不疲地玩起来……不过她不能确定最多能有多少个数在自己的位置上,所以找到你,请你帮忙计算一下!
【输入格式】
第一行为一个数n,表示数列的长度。接下来一行为n个用空格隔开的正整数,第i行表示数Ai。
【输出格式】
一行一个整数,表示擦掉某些数后,最后剩下的数列中最多能有多少个数在自己的位置上,即Ai=i最多能有多少。【样例输入】
51 1 2 5 4
【样例输出】
3【提示】
对于20%的数据,n≤20;对于60%的数据,n≤100;
对于100%的数据,n≤l000
#include<iostream> #include<cstdio> using namespace std; int main() { freopen("seqgame.in","r",stdin); freopen("seqgame.out","w",stdout); int ac[1010]={0}; int dp[1010]={0}; int n;int max; cin>>n; int i,j; for(i=1;i<=n;i++) cin>>ac[i]; for(i=1;i<=n;i++) { if(ac[i]>i) { dp[i]=0; continue; } max=0; for(j=0;j<i;j++) if(ac[i]>ac[j]) if((ac[i]-ac[j])<=(i-j)) { if(dp[j]>max)max=dp[j]; } dp[i]=max+1; } max=0; for(i=1;i<=n;i++) if(dp[i]>max)max=dp[i]; cout<<max<<endl; return 0; }
View Code
代码分析:
其实该题就是求最长递增子序列;只不过是加了一些附加的条件;
首先,应该是该元素的值应该大于等于该元素的下标;否则不行,即赋值为0;
其次,元素之差要小于等于下标之差;
在上边这些条件下找出DP数组中第i个元素前的最大值加1赋给dp[i];
最后在dp数组中寻找最大值然后输出;
相关文章推荐
- [NOIP2010冲刺十二] 奶牛排队
- [NOIP2010冲刺十二] 圆圈舞蹈
- [NOIP2010冲刺十三] 逃离遗迹
- 【CJOJ P1957】【NOIP2010冲刺十模拟赛】数字积木
- 【NOIP2010冲刺十二模拟赛】奶牛晒衣服
- 【CJOJ P1957】【NOIP2010冲刺十模拟赛】数字积木
- 线段树 1212. [NOIP2010冲刺十二] 奶牛排队
- [NOIP2010冲刺十二] 奶牛晒衣服
- jzoj5463 【NOIP2017提高A组冲刺11.8】证书
- noip提高组 2010 关押罪犯 (洛谷1525)
- 【用脚趾头解决NOIP】(3)NOIP2010普及组阅读程序写运行结果
- 【NOIP2010】【P1317】乌龟棋
- NOIP2010 引水入城
- 【NOIP2010】引水入城
- noip2010初赛提高组 试题详解
- NOIP2010第三题 ---接水问题(摘自洛谷题解)
- NOIP2010 烽火传递 队列DP
- JZOJ 5444. 【NOIP2017提高A组冲刺11.2】救赎
- [JZOJ5446]【NOIP2017提高A组冲刺11.3】高考是不可能高考的(2-SAT问题)【Atcoder regular context 069F】
- 2017.11.03【NOIP提高组】冲刺A组 总结