标题:错误票据

某涉密单位下发了某种票据,并要在年终全部收回。每张票据有唯一的ID号。全年所有票据的ID号是连续的,但ID的开始数码是随机选定的。因为工作人员疏忽,在录入ID号的时候发生了一处错误,造成了某个ID断号,另外一个ID重号。你的任务是通过编程,找出断号的ID和重号的ID。假设断号不可能发生在最大和最小号。

要求程序首先输入一个整数N(N<100)表示后面数据行数。
接着读入N行数据。
每行数据长度不等,是用空格分开的若干个(不大于100个)正整数(不大于100000)
每个整数代表一个ID号。

要求程序输出1行,含两个整数m n,用空格分隔。
其中,m表示断号ID,n表示重号ID

例如:
用户输入:
2
5 6 8 11 9
10 12 9

则程序输出:
7 9

再例如:
用户输入:
6
164 178 108 109 180 155 141 159 104 182 179 118 137 184 115 124 125 129 168 196
172 189 127 107 112 192 103 131 133 169 158
128 102 110 148 139 157 140 195 197
185 152 135 106 123 173 122 136 174 191 145 116 151 143 175 120 161 134 162 190
149 138 142 146 199 126 165 156 153 193 144 166 170 121 171 132 101 194 187 188
113 130 176 154 177 120 117 150 114 183 186 181 100 163 160 167 147 198 111 119

则程序输出:
105 120

资源约定:
峰值内存消耗(含虚拟机) < 64M
CPU消耗 < 2000ms

请严格按要求输出,不要画蛇添足地打印类似:“请您输入…” 的多余内容。

所有代码放在同一个源文件中,调试通过后,拷贝提交该源码。
注意:不要使用package语句。不要使用jdk1.6及以上版本的特性。
注意:主类的名字必须是:Main,否则按无效代码处理。

思路分析:

将输入的数据数组存储后进行循环判断,设置一个数字次数判断数组,对原数组进行扫描,最后进行规整时候,若次数判断数组中数字出现的次数为0则为断号ID,若次数为2则为重数ID

代码展示:

public static int []solution(int[][] nums,int min,int hj,int n){int k[] = new int[hj];int []end = new int [2];int i = 0,j = 0;for (i = 0;i < n;i++) {for(j = 0;nums[i][j]!=0;j++) {k[nums[i][j]-min]++;}}for (i = 0;i< k.length;i++) {if (k[i] == 2)end[1] = i+min;if (k[i] == 0)end[0] = i+min;}return end;}

测试类

public class Main{public static void main(String[] args) {Scanner input = new Scanner(System.in);int temp = 0;int min = 100000;int n = input.nextInt();input.nextLine();//为了去除回车int nums[][] = new int[n][100];int j = 0;String k;int hj = 0;String s[];for (int i = 0;i < n;i++) {k = input.nextLine();s = k.split(" ");for (j = 0;j<s.length;j++){  nums[i][j] = Integer.parseInt(s[j]);hj++;//记录数字的总数if (nums[i][j]<min)min = nums[i][j];}}int end[] = new int[2];end = solution(nums, min, hj,n);System.out.print(end[0]+" ");System.out.print(end[1]);}
}

错误总结和反思:

  1. 本题做题思路上没有问题,但是在对数字的储存上出了问题,一开始使用Arraylist进行储存,但是最后原因在于无法对于每行数据换行进行结束。遂采用字符串转数字的模式进行。以后可以一直用。

  2. 在输入第一个数字以后,记得要接受换行符,不然被下一行所接受了!
    导致K为空

  3. next() 和 nextline()区别:

    next()方法在读取内容时,会过滤掉有效字符前面的无效字符,对输入有效字符之前遇到的空格键、Tab键或Enter键等结束符,next()方法会自动将其过滤掉;只有在读取到有效字符之后,next()方法才将其后的空格键、Tab键或Enter键等视为结束符;所以next()方法不能得到带空格的字符串。

    nextLine()方法字面上有扫描一整行的意思,它的结束符只能是Enter键,即nextLine()方法返回的是Enter键之前没有被读取的所有字符,它是可以得到带空格的字符串的。

JAVA软件开发本科B组7:错误票据相关推荐

  1. 算法笔记_110:第四届蓝桥杯软件类省赛真题(JAVA软件开发高职高专组部分习题)试题解答...

     目录 1 猜年龄 2 组素数 3 第39级台阶 4 核桃的数量 5 打印十字图 6 买不到的数目   前言:以下试题解答代码部分仅供参考,若有不当之处,还请路过的同学提醒一下~ 1 猜年龄 标题: ...

  2. 2014年第五届蓝桥杯预赛题目JAVA软件开发高职高专组7

    package three; import java.util.Scanner; /*  *  标题:核桃的数量 小张是软件项目经理,他带领3个开发组.工期紧,今天都在加班呢.为鼓舞士气,小张打算给每 ...

  3. 高薪聘请2021/2022届本/硕/博数学、物理、统计、计算机、软件等专业 1、量化软件开发工程师(本科211以上)base北上杭深关键词:c++、python、java软件开发

    高薪聘请2021/2022届本/硕/博 数学.物理.统计.计算机.软件等专业 1.量化软件开发工程师 (本科211以上)base北上杭深 关键词:c++.python.java软件开发 年40-70万 ...

  4. java 软件开发面试宝典

    一. Java 基础部分........................................................................................ ...

  5. 我是如何从通信成功转型为 Java 软件开发工程师的?

    十年寒窗苦读,无论是谁,都希望能够拥有一个好的未来,但是在面临职业生涯的抉择时,会有不少人会为曾经的选择而后悔,不过在为时不晚的情况下,大家更多的还是会转型.在本文中,作者将分享其从传统的通信行业融入 ...

  6. 开课吧:Java软件开发的优点有哪些?​

    众所周知Java语言因为其简单且安全性高等优点,越来越受到青睐,那么在使用Java开发语言进行软件开发的时候,具体有哪些优点呢? Java开发工程师需要了解的基础知识 Java软件开发的优点包括以下这 ...

  7. *Java软件开发面试知识整理*

    Java软件开发面试知识整理 围绕以下几点回答问题:是什么.为什么.什么时候用.项目实现.解决什么问题.遇到的困难 谈谈你对Java和C的理解? Java: 面向对象.Unicode:可以跨平台(JV ...

  8. 【JAVA软件开发】

    java考试复习 JAVA软件开发复习 二 程序实现 链表 约瑟夫环 二叉树 1.给出数据结构定义 2.给出java实现代码 public class BST<E extends Compara ...

  9. java培训分享:java软件开发可以用哪些软件?

    从事java相关工作的小伙伴应该都有一个习惯,那就是运用软件的方便来达到高效率工作,本期小编为大家介绍的java培训教程就是关于"java软件开发可以用哪些软件?"的内容,来看看下 ...

最新文章

  1. python电脑下载方法-python 获取机器snpython下载文件的几种常用方法
  2. 本地存储与云存储方案价值对比—Vecloud
  3. maven deploy jar包到远程仓库400
  4. easyui复杂表单_EasyUI中实现form表单提交的示例分享
  5. Web Services简单介绍
  6. 1682: [Usaco2005 Mar]Out of Hay 干草危机
  7. 怪哉翻译软件测试,[东方朔传翻译]东方朔传·怪哉原文与翻译
  8. 【离散数学】论域和客体函数的区别
  9. win7如何添加终端服务器,Win7系统如何添加超级终端?Windows7系统超级终端的添加方法...
  10. python能不能开发app_Python可以开发APP吗?老男孩Python教育
  11. 4星|《经济学通识课》:深入浅出的经济学思想发展简史
  12. 锐聘学院oracle上机题
  13. sitemap 在线生成
  14. HEVC Cabac解码
  15. git branch命令解析
  16. Python | 人脸识别系统 — 活体检测
  17. js blur失焦事件与click点击事件冲突
  18. 闲人闲谈PS之二十一——SAP自定义程序增加附件上传下载功能
  19. 飞儿卡斯单片机学习(一)
  20. deepin linux软件,深度软件包安装器

热门文章

  1. 芜湖光华学校优选云盒子教育云盘,自建专属数据中心
  2. Vertical Mapper 3.0
  3. springboot根据模板生成pdf文件
  4. SpringMvc同时配置jsp和html的视图解析器
  5. 2020高压电工考试试题及高压电工考试软件
  6. 场地预约小程序,场地预约微信小程序,运动场地预约小程序
  7. 6264:走出迷宫——BFS
  8. 软件过程能力成熟度模型
  9. php如何将文档转成flas,PHP_PHP实现仿百度文库,豆丁在线文档效果(word,excel,ppt转flash),本文实例讲述了PHP实现仿百度 - phpStudy...
  10. 【ROS2要素】xml、GDF、URDF的关系