hdu 6197 array array array
来源:互联网 发布:java 打印map 编辑:程序博客网 时间:2024/06/17 03:11
经典的dp正着来个最长上升子序列,反着来个最长上升子序列,结束
#include<bits\stdc++.h>using namespace std;typedef long long ll;#define pb push_backint INF=1e9+7;const int mod=1e9+7;int n,m;int x;int g[100005],g1[100005],a[100005];int main(){ int t,k,y; scanf("%d",&t); while(t--) { scanf("%d%d",&n,&k); int ans=0; int ans1=0; for(int i=1; i<=n; i++)g[i]=INF,g1[i]=INF; for(int i=1; i<=n; i++) { scanf("%d",&a[i]); } for(int i=1;i<=n;i++) { x=a[i]; y=a[n-i+1]; if(i==1)g[i]=x,g1[i]=y; else { int j=lower_bound(g+1,g+1+n,x)-g; int j1=lower_bound(g1+1,g1+1+n,y)-g1; if(g[j]==x)j++; if(g1[j1]==y)j1++; g[j]=x; g1[j1]=y; ans=max(ans,j); ans1=max(ans1,j1); } } if(n-ans<=k||n-ans1<=k) printf("A is a magic array.\n"); else { printf("A is not a magic array.\n"); } } return 0;}
阅读全文
0 0
- hdu 6197 array array array
- HDU 6197 array array array
- 【HDU 6197】array array array 【LIS】
- HDU 6197 array array array(最长不下降子序列)
- HDU 6197array array array(简单dp)
- array
- Array#-
- Array#[]
- Array#<<
- Array
- array
- Array
- array
- Array
- array
- array
- array
- array()
- [LeetCode] 138: Word Ladder II
- [LeetCode] 139: Word Search
- [LeetCode] 140: ZigZag Conversion
- 隐马尔可夫模型(HMM)攻略
- 向前-向后算法(Baum-Welch算法)
- hdu 6197 array array array
- 随机森林与GBDT
- 聚类算法之K-means算法与聚类算法衡量指标
- LSA与pLSA(1)
- LSA与pLSA(2)
- Gradle学习系列之四——增量式构建
- JVM方面相关面试总结
- erci_demo
- vb.net 教程 20-3 控制Ie浏览器 9