《美团编程题》丢失的三个数
来源:互联网 发布:阿里云课堂app 编辑:程序博客网 时间:2024/06/08 09:03
题目描述
现在有一个数组,其值为从1到10000的连续增长的数字。出于某次偶然操作,导致这个数组中丢失了某三个元素,同时顺序被打乱,现在需要你用最快的方法找出丢失的这三个元素,并且将这三个元素根据从小到大重新拼接为一个新数字,计算其除以7的余数。 例:丢失的元素为336,10,8435,得到的新数字为103368435,除以七的余数为2。
输入描述:
输入数据为一行,包含9997个数字,空格隔开。
输出描述:
输出为一行,包含一个数字。
示例1
输入
同题设例子输入
输出
2
解析:首先来个排序,然后开始找那三个数了,找到了继续排序,然后拼接,最后记得%7得结果。
import java.util.*;public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); while (scanner.hasNext()){ String s= scanner.nextLine(); String [] str=s.split(" "); int [] arr= new int[str.length]; for(int i=0;i<str.length;i++){//输入的当行字符串转为整数 arr[i]=Integer.parseInt(str[i]); } Arrays.sort(arr);//排序 List<Integer> list = new ArrayList<>();//存储三个数 for(int i=0;i<arr.length;i++){ for(int j=i+1;j<arr.length;i++){ if(arr[j]==arr[i]+2){//找到了丢失的数,保存 list.add(arr[i]+1); }else { break; } } } Collections.sort(list);//丢失的数排序 StringBuilder sb = new StringBuilder(); for(Integer i:list){ sb.append(i); } System.out.println(Long.parseLong(sb.toString())%7); } }}
阅读全文
0 0
- 《美团编程题》丢失的三个数
- 【美团】丢失的三个数
- 编程之美(寻找丢失的数)
- 寻找丢失的三个数
- 牛客笔试:丢失的三个数
- 编程之美2.12——快速寻找满足条件的两个数或三个数
- 编程之美1.12 —— 寻找满足条件的两个数、三个数
- 编程之美——快速寻找满足条件的两个数或三个数
- 编程之美2.12——快速寻找满足条件的两个数或三个数
- 编程之美2.12——快速寻找满足条件的两个数或三个数
- 编程之美 N个正整数的数组 寻找丢失的数 和 寻找唯一重复的数
- 编程之美,大神和它的三个小伙伴
- 《编程之美》 符合条件的数
- 美团编程题
- 美团编程题
- 找丢失的数
- 寻找丢失的数
- BNUOJ_P4087 丢失的数
- Alice 与 Bob 的游戏 (概率DP)
- HDU 2255 奔小康赚大钱
- oracle约束
- 【HDU 3336】Count the string 【KMP next数组巧妙应用】
- Qt数字与字符串之间的相互转换
- 《美团编程题》丢失的三个数
- Android 屏幕适配:最全面的解决方案
- Dead or Alive
- 测试链接服务器是否可用
- JavaMail发送邮件
- maven学习系列篇
- log4j2的使用
- 程序员不得不珍藏的那些励志片段
- ajax处理从servlet获取的json array