Codeforces 474E Pillars(论数据的重要性)
来源:互联网 发布:科比2003年总决赛数据 编辑:程序博客网 时间:2024/05/22 00:15
今天做到这道题,一看是一道很水的最长不下降序列吧,但是数据超级大,怎么办,突发奇想,因为每一次都要和前面比,那么需要从第一个状态推现在的状态,那么有数据比较水,也许前面的600个状态就可一推理到,那么直接从他的钱600个状态推就水过了
#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>#include <vector>using namespace std;typedef long long int ll;const int N=100100;int n,K;ll h[N],sum[N],path[N],ans[N];int main(){cin>>n>>K;sum[1]=1; int maxl=1;for(int i=1;i<=n;i++){cin>>h[i];sum[i]=1;for(int j=max(1,i-600);j<i;j++){if(abs(h[j]-h[i])>=K&&sum[j]+1>sum[i]){sum[i]=sum[j]+1;path[i]=j;//下一个是j}if(sum[i]>sum[maxl]){maxl=i;}}}cout<<sum[maxl]<<endl;int T=path[maxl];int cnt=0;ans[cnt]=maxl;while(T){ans[++cnt]=T;T=path[T];}for(int i=cnt;i>=0;i--){cout<<ans[i]<<" ";}return 0;}
1 0
- Codeforces 474E Pillars(论数据的重要性)
- Codeforces 474 E. Pillars
- CodeForces 474 E. Pillars
- codeforces 474E Pillars(线段树+dp)
- Codeforces 474E Pillars dp+线段树
- Codeforces 474E Pillars dp+线段树
- 【CODEFORCES】 E. Pillars
- E. Pillars(Codeforces Round #271)
- 【CF 474E】Pillars
- Codeforces 474E Pillars dp+线段树(水
- Codeforces Round #271 (Div. 2) E. Pillars
- Codeforces 474E Pillars【Dp+线段树+二分+离散化】好题~
- Codeforces Round #271 (Div. 2) E Pillars(dp+线段树优化)
- Codeforces Round #271 (Div. 2) E题 Pillars(线段树维护DP)
- Codeforces Round #271 (Div. 2) E. Pillars(线段树优化DP)
- Codeforces Round #271 (Div. 2) E. Pillars(线段树+DP)
- Codeforces Round #271 (Div. 2)——E. Pillars
- 【Codeforces Round 271 (Div 2)E】【离散化线段树】Pillars 最长连续序列使得序列相邻的数差值至少为k
- JQuery下focus()无法自动获取焦点的处理方法 jquery如何使文本框获得焦点
- ViewPager学习笔记
- King - UVa 515 差分约束系统
- 胖子伤不起
- Diplexer也能用于做Duplexer
- Codeforces 474E Pillars(论数据的重要性)
- java基础----RandomAccessFile
- LEETCODE: Best Time to Buy and Sell Stock III
- locate ppi 详解
- c#里压缩文件的两种方式
- 好用的Vim配置文件(更偏重于C/C++)
- 图像旋转变换
- Linux内核Ramdisk(initrd)机制
- 黑马程序员————Java基础之面向对象(二)