当前位置: 首页 > news >正文

做网站推广的 什么是开户网络营销的四个步骤

做网站推广的 什么是开户,网络营销的四个步骤,自己主机做多个网站,网站建设seo 视频教程最长上升子序列II 题目描述 给定一个长度为N的数列,求数值严格单调递增的子序列的长度最长是多少。 输入格式 第一行包含整数N。 第二行包含N个整数,表示完整序列。 输出格式 输出一个整数,表示最大长度。 数据范围 1 ≤ N ≤ 100000…

最长上升子序列II

题目描述

给定一个长度为N的数列,求数值严格单调递增的子序列的长度最长是多少。

输入格式

第一行包含整数N。

第二行包含N个整数,表示完整序列。

输出格式

输出一个整数,表示最大长度。

数据范围

1 ≤ N ≤ 100000 , 1≤N≤100000, 1N100000
− 1 0 9 ≤ 数列中的数 ≤ 1 0 9 −10^9≤数列中的数≤10^9 109数列中的数109

输入样例:7
3 1 2 1 8 5 6输出样例:4

Solution

import java.util.*;class Main{public static void main(String[] args){Scanner sc = new Scanner(System.in);int N = sc.nextInt();// N 为 100000, n 方的做法会 TLEint[] a = new int[N + 10];// res[i] 数组记录长度为 i 时,所有子序列中结尾最小的元素int[] q = new int[N + 10];// 初始化为 0int len = 0;for(int i = 1; i <= N; i++) {a[i] = sc.nextInt();// 二分查找优化时间复杂度 logn// 查找最后一个小于 a[i] 的值int idx = bsearch(q, len, a[i]);if(idx == len) {len++;q[len] = a[i];}else{if(q[idx + 1] > a[i]) q[idx + 1] = a[i];}}System.out.println(len);}public static int bsearch(int[] q, int n, int x){// 找最后一个小于 x 的位置// 如果都比 x 大的话返回 0// 从 1 到 n 开始二分int low = 1, high = n;while(low <= high){int mid = (low + high) / 2;if(q[mid] < x){if(mid == n || q[mid + 1] >= x) return mid;else low = mid + 1;}else high = mid - 1;}return 0;}
}
http://www.yidumall.com/news/15055.html

相关文章:

  • 最好的微网站建设公司网站收录教程
  • 制作公司网站的费用长春网站优化流程
  • 网站建设都需要什么技术人员朋友圈广告30元 1000次
  • 东莞网站建设 烤活鱼百度分析工具
  • 上饶做网站的公司搜索引擎关键词快速优化
  • 网站建设 排名朝阳seo搜索引擎
  • 用jsp做网站步骤2023年8月新闻热点事件
  • 深圳新闻网官网seo如何建立优化网站
  • 淘宝做的网站优化北京关键词优化报价
  • 大同工程造价信息网北京网站优化站优化
  • 网站备案个人可以做吗上海百度竞价
  • wordpress 搜索报错长沙竞价优化
  • 网站首页没收录专业北京seo公司
  • 西安企业网站建设网站广告制作
  • 泉做网站的公司免费建设网站平台
  • dw怎样做收藏本网站外链价格
  • 网站搭建服务器需要什么时空seo助手
  • 网站开发工作好不好地推接单正规平台
  • 学做网站要学什么软件深圳网站建设找哪家公司好
  • 网站建设的基础条件seo站内优化培训
  • 云建站公司图片外链工具
  • 做网站销售好不好百度客户端官网
  • 专业网站制作哪家专业重庆seo是什么
  • 百度网站惩罚期西安做网站的公司
  • ip做网站地址淘宝推广方法有哪些
  • 先做网站后台还是前台深圳网站设计公司哪家好
  • 开发网站用什么工具做设计网络营销第三版课本
  • 关于网站建设需要了解什么东西求几个好看的关键词
  • 怎么开免费网站如何网站推广
  • 带地板翻转的网站怎么做seo服务哪家好