【链家笔试题】部队分组
来源:互联网 发布:java字符串截取到空格 编辑:程序博客网 时间:2024/04/29 14:58
思路
二分查找,假如输入的数据不在有效数据范围这个二分会抛错,没做异常输入处理。
import java.util.Scanner;public class Main { private static int find(int[] array, int num) { int low = 0; int high = array.length - 1; while (low <= high) { int mid = (low + high) / 2; if (num >= array[mid] && num < array[mid + 1]) { return mid; } if (num > array[mid]) { low = mid + 1; } else if (num < array[mid]) { high = mid - 1; } } return -1; } public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int[] num = new int[n + 1]; num[0] = 1; for (int i = 1; i <= n; i++) { int temp = sc.nextInt(); num[i] = num[i - 1] + temp; } int k = sc.nextInt(); int[] q = new int[k]; for (int i = 0; i < k; i++) { q[i] = sc.nextInt(); } for (int i = 0; i < q.length; i++) { System.out.println(find(num, q[i])+1); } }}
阅读全文
0 0
- 【链家笔试题】部队分组
- 【算法题】训练部队
- 笔试题——团队活动分组
- 链家笔试题
- 去哪儿笔试:身份证分组
- 部队医院
- 部队侦察
- 【链家笔试题】问卷调查
- 链家笔试题小记
- 链家笔试题总结
- 链家笔试题整理
- 链家笔试算法题
- 阿里笔试题(2017在线编程题)-- 数串分组
- 面试笔试2 sql 分组统计
- 2018链家笔试编程题
- 拆弹部队
- 《拆弹部队》
- 中国部队总动员截图!
- GIT和SVN比较
- Android中的子线程和服务的使用
- 线段树(一)
- VS2013下glew库链接失败问题OpenGL.obj : error LINK2001: 无法解析的外部符号 __imp____glewFramebufferTexture2DEXT
- [leedcode]-- 27. Remove Element
- 【链家笔试题】部队分组
- Struts2 拦截器 默认Action 一些常量的设置 Result常用的结果类型
- vector用法详解
- Python的seek函数
- ORACLE面试题
- 分页类
- 想想还是用自己的博客写东西比较好
- Leetcode64. Minimum Path Sum
- CSS揭秘 第二章 背景与边框