B
来源:互联网 发布:mac系统怎么保存文件 编辑:程序博客网 时间:2024/04/30 12:54
点击打开链接
给你一些序列,判断是否接近上升序列或者下降序列
#include<stdio.h>#include<string.h>#include<stdlib.h>#include<queue>#include<stack>#include<math.h>#include<vector>#include<map>#include<set>#include<stdlib.h>#include<cmath>#include<string>#include<algorithm>#include<iostream>#define N 100005#define exp 1e-10using namespace std;int a[N],b[N],d[N];int t,n;int bsearch(int size,int a){ int l=0,r=size-1; while(l<=r) { int mid=(l+r)/2; if(a>=d[mid-1] && a<d[mid]) return mid; else if( a<d[mid]) r=mid-1; else l=mid+1; }}int lis(int a[])//求最长单调子序列o(n)logn 返回的是长度{ int size=1,j; d[0]=a[0]; for(int i=1;i<n;i++) { if(a[i] < d[0]) j=0; else if(a[i] >= d[size-1]) j=size++; else j=bsearch(size,a[i]); d[j]=a[i]; } return size;}int main(){ scanf("%d",&t); while(t--) { scanf("%d",&n); for(int i=0;i<n;i++) { scanf("%d", &a[i]); b[n-i-1]=a[i]; } int size1=lis(a); int size2=lis(b); if(size1>=n-1 ||size2>=n-1) puts("YES"); else puts("NO"); }}
阅读全文
0 0
- b
- b
- b
- //b
- B
- b
- B
- B
- B
- B
- b
- B
- B
- B
- B
- B
- B
- b
- Linux下i2c设备的注册过程
- 针对安卓EditText设置editable属性失效的问题
- 洛谷P1078 文化之旅
- The expression except (OSError, e)
- 网上很多laravel中cookie的使用方法。
- B
- 基础(冒泡排序+汉字转换+datagrid+date格式加一年+个性代码)
- centos设置tomcat开机启动
- 谈谈从毕业到工作的心理历程
- Eclipse中安装Spring插件
- Bit String Reordering
- HDU
- xutils网络请求后操作数据库
- SpringBoot使用Gradle构建war包的步骤