问题描述
某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭。由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹。
输入导弹依次飞来的高度(雷达给出的高度数据是不大于30000的正整数),计算这套系统最多能拦截多少导弹,如果要拦截所有导弹最少要配备多少套这种导弹拦截系统。

输入格式
一行,为导弹依次飞来的高度
输出格式
两行,分别是最多能拦截的导弹数与要拦截所有导弹最少要配备的系统数
样例输入
389 207 155 300 299 170 158 65
样例输出
6
2

package algo13;import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;public class Main {public static void main(String[] args) throws IOException {BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));String[] missile = reader.readLine().split(" ");reader.close();int[] high = new int[missile.length];for (int i = 0; i < high.length; i++) {high[i] = Integer.parseInt(missile[i]);}System.out.println(getMaxIntercept(high));System.out.println(getNumberOfIntercepter(high));}private static int getMaxIntercept(int[] high) {int[] dp = new int[high.length];int max = 0;for (int i = 0; i < high.length; i++) {for (int j = i + 1; j < high.length; j++) {if (high[j] <= high[i]) {dp[j] = Integer.max(dp[j], dp[i] + 1);max = Integer.max(max, dp[j]);}}}return max + 1;}private static int getNumberOfIntercepter(int[] high) {int numberOfIntercepter = 0;boolean[] isIntercept = new boolean[high.length];for (int i = 0; i < high.length; i++) {int midHighDifference = getMinHighDifference(high, i, isIntercept);if (midHighDifference == -1) {numberOfIntercepter++;} else {isIntercept[midHighDifference] = true;}}return numberOfIntercepter;}private static int getMinHighDifference(int[] high, int pos, boolean[] isIntercept) {int minHighDifferenceIndex = -1;for (int i = 0; i < pos; i++) { if (isIntercept[i] == false && high[i] >= high[pos]) {if (minHighDifferenceIndex == -1 || high[i] < high[minHighDifferenceIndex]) {minHighDifferenceIndex = i;}}}return minHighDifferenceIndex;}
}

[Java] 蓝桥杯ALGO-13 算法训练 拦截导弹相关推荐

  1. 蓝桥杯:试题 算法训练 Remember the A La Mode

    蓝桥杯:试题 算法训练 Remember the A La Mode 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 Hugh Samston经营着一个为今年的ICPC世界总决赛的参 ...

  2. 矩阵乘法 算法训练 试题_蓝桥杯习题集_ 算法训练 矩阵乘法

    原文: 算法训练 矩阵乘法 时间限制:1.0s   内存限制:512.0MB 问题描述 输入两个矩阵,分别是m*s,s*n大小.输出两个矩阵相乘的结果. 输入格式 第一行,空格隔开的三个正整数m,s, ...

  3. 蓝桥杯 ALGO-13 算法训练 拦截导弹 Java版

    问题描述 某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度.某天,雷达捕捉到敌国的导弹 ...

  4. java蓝桥杯的题_Java蓝桥杯试题集——算法训练ALGO-116——最大的算式

    题目要求 解题思路 动态规划,今天才弄明白QAQ,借鉴了这位大佬的博客,曹磊的博客 写的很好!但是我觉得我的循环方式更容易理解嘿嘿嘿~ 首先建立如下图的数组,行数代表前几位数,列数代表有几个乘号.将第 ...

  5. 蓝桥杯算法训练 拦截导弹(动态规划 C语言)

    问题描述 某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统.但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度.某天,雷达捕捉到敌国的导弹 ...

  6. 蓝桥杯练习系统算法训练习题加答案java版本

    附上百度文库的链接:http://wenku.baidu.com/view/afb78d36b42acfc789eb172ded630b1c59ee9bf7 转载于:https://www.cnblo ...

  7. JAVA蓝桥杯:高精度算法

    问题描述 问题描述 输入两个整数a和b,输出这两个整数的和.a和b都不超过100位. 算法描述 由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储.对于这种问题,一般使用数组来处理. 定义 ...

  8. 蓝桥杯-黑色星期五(算法训练)

    题目描述: 有些西方人比较迷信,如果某个月的13号正好是星期五,他们就会觉得不太吉利,用古人的说法,就是"诸事不宜".请你编写一个程序,统计出在某个特定的年份中,出现了多少次既是1 ...

  9. 蓝桥杯练习系统—算法训练 s01串

    第一部分:题目 问题描述 s01串初始为"0" 按以下方式变换 0变1,1变01 输入格式 1个整数(0~19) 输出格式 n次变换后s01串 样例输入 3 样例输出 101 数据 ...

最新文章

  1. 【learning】矩阵树定理
  2. ASP.NET MVC3 快速入门--第二节 添加一个控制器
  3. #Ubuntu 18.04 安装tensorflow-gpu 1.9
  4. Spring Boot项目开启异步使用多线程完整代码案例
  5. 2017西安交大ACM小学期数据结构 [线段树]
  6. python换行符号长度_创建带换行符的可调整大小/多行Tkinter/ttk标签
  7. 重磅!阿里云发布业界首本云网络白皮书
  8. 一些NLP数据/语料下载
  9. 量子计算机可以预测未来吗,这台量子计算机可以同时预测16种不同的未来
  10. 串口通信实例vb.net serialport
  11. word使用上角标超链接到引用的参考论文
  12. M2M、物联网应用开发的好助手——Wavecom Sierra 无线MODEM( GSM/GPRS/EDGE MODEM)
  13. webscraper多页爬取_Web Scraper 翻页——抓取「滚动加载」类型网页(Web Scraper 高级用法)| 简易数据分析 10...
  14. AWS服务器,如何设置成密码登录
  15. 负整数的取模与取整的问题
  16. JAVA实现Doc与Docx互转
  17. Oracle 存储过程 字符串拼接 SQL注入的问题
  18. 转载:十年驾车经验总结:活着,才是硬道理
  19. 那些年啊,那些事——一个程序员的奋斗史 ——92
  20. 【making tools】:算英语文章中单词个数,给英语老师使用

热门文章

  1. java组件_三个必不可少的Java平台组件:什么是JVM,JDK,JRE?有啥区别?
  2. 更新了android sdk出现aapt问题以及模拟器启动错误
  3. 因为arc的命名规则而产生的一些错误
  4. 深入理解JAVA虚拟机——个人阅读笔记
  5. vc中运行外部程序的方法
  6. 让Python删除window下文件
  7. 【No.1】基于Cookie的单点登录(SSO)
  8. [20170612]FOR ALL COLUMNS SIZE repeat(11g).txt
  9. 协议 - 收藏集 - 掘金
  10. Adobe 修复Commerce 和 Magento 平台中的又一个严重RCE