网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

【华为机试java】HJ24合唱队-创新互联

import java.util.Scanner;

// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        // 注意 hasNext 和 hasNextLine 的区别
        int n = in.nextInt();
        int[] arr = new int[n];
        for (int i = 0; i< n; i++) {
            arr[i] = in.nextInt();
        }

        int[] num = new
        int[n]; // 记录从左到右和从右到左递增最长队列长度的加和
        int[] left = new int[n]; // 记录从左到右递增的队列
        int[] right = new int[n]; // 记录从右到左递增的队列

        num[0] = 0;
        left[0] = arr[0];
        right[0] = arr[n - 1];

        int index = 0;
        for (int i = 1; i< n; i++) {
            if (arr[i] >left[index]) {
                left[++index] = arr[i];
                num[i] = index;
            } else {
                int low = 0;
                int high = index;
                // 利用二分查找法找到arr[i]在left[]数组的位置
                while (low< high) {
                    int mid = (low + high) / 2;
                    if (left[mid]< arr[i]) {
                        low = mid + 1;
                    } else {
                        high = mid;
                    }
                }
                num[i] = low;
                left[low] = arr[i];
            }
        }
        int rightIndex = 0;
        for (int j = n - 2; j >= 0; j--) {
            if (arr[j] >right[rightIndex]) {
                right[++rightIndex] = arr[j];
                num[j] += rightIndex;
            } else {
                int low = 0;
                int high = rightIndex;
                while (low< high) {
                    int mid = (low + high) / 2;
                    if (arr[j] >right[mid]) {
                        low = mid + 1;
                    } else {
                        high = mid;
                    }
                }
                num[j] += low;
                right[low] = arr[j];
            }
        }
        int max = 0;
        for (int i = 0; i< n; i ++) {
            max = Math.max(num[i], max);
        }
        // max是num里面的大值,但是此处需要减去最高值本身
        System.out.println(n - max - 1);
    }
}

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧

创新互联专注于企业全网整合营销推广、网站重做改版、贺州网站定制设计、自适应品牌网站建设、H5页面制作商城网站定制开发、集团公司官网建设、外贸营销网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为贺州等各大城市提供网站开发制作服务。
网站题目:【华为机试java】HJ24合唱队-创新互联
网站链接:http://bjjierui.cn/article/ccshcd.html

其他资讯