给定n个整数(0-100),其中0可以替换成任意其他数字,如数组{98,99,100,1,2,3} 视为连续,要求判断这n个整数是否连续?
该题目为某IT公司的笔试题目
题目:
给定n个整数(0-100),其中0可以替换成任意其他数字,如数组{98,99,100,1,2,3} 视为连续,要求判断这n个整数是否连续?若是连续数组,返回true;若不是连续数组,返回false。
举例:
输入数组{98,99,100,1,2,3}
输出:ture
输入数组{0,98,99,1,2,3}
输出:ture
程序代码
public class Test {public static boolean ifContinuous(int[] arr){int sumZero = 0; //0的个数int interval = 0; //统计差值for(int i=0; i<arr.length; i++){ //统计0的数目if(arr[i] ==0){sumZero++;i++;}if(i+1<arr.length && i>=0) {if (arr[i+1] - arr[i] != 1 && arr[i+1] - arr[i]!= 0) {//找到差值不是1和0的if (arr[i+1] - arr[i] < 0) {interval += arr[i+1] - arr[i] + 100 - 1;//如果差值是负数那么 就将差值赋值为}else{interval += arr[i+1] - arr[i] - 1;//如果差值不是负数 赋值为}}}}if (interval == sumZero){ //如果差值和0的数目相等那么就是有序的return true;}return false;}public static void main(String[] args) {int[] arr1 = {98, 99, 100, 1, 2, 3};int[] arr2 = {0, 98, 99, 1, 2, 3};System.out.println(ifContinuous(arr1));System.out.println(ifContinuous(arr2));}
}
运行结果
给定n个整数(0-100),其中0可以替换成任意其他数字,如数组{98,99,100,1,2,3} 视为连续,要求判断这n个整数是否连续?相关推荐
- /* * 编程第一题(20分): 1+(1+2)+(1+2+3)+……+(1+2+3+……+98+99+100) */
题目: /* 编程第一题(20分): 1+(1+2)+(1+2+3)+--+(1+2+3+--+98+99+100) */ 我是用的java做的 class One {public static vo ...
- 01背包问题(当有的背包重量是非整数时)的递归(优化成动态规划+再用滚动数组优化)解法+一些动态规划(递归,搜索)的高级技巧
当背包重量是整数时,动态规划可以用数组存储状态就可以了. 当背包重量是非整数时,用map存储状态就可以了!主要思路: map(构造函数中参数comp是仿函数(或者叫函数对象))+递归优化(" ...
- Java黑皮书课后题第5章:*5.30(金融应用:复利值)假设你每月在储蓄账户上多存100美元,年利率为5%,那么每月利率是0.05 / 12 = 0.00417。编写程序提示用户输入数据显示定月钱数
5.30(金融应用:复利值)假设你每月在储蓄账户上多存100美元,年利率为5%,那么每月利率是0.05 / 12 = 0.00417.编写程序提示用户输入数据显示定月钱数 题目 题目概述 破题 代码 ...
- python编写一个程序、输入一个数判断其是偶数还是奇数_编写一个程序,判断用户输入的整数是偶数还是奇数。 (7.0分)_学小易找答案...
[其它]已知info=[1,2,3,4,5],请通过两种编程方法,将列表变成info=[5,4,3,2,1] (6.0分) [其它]阅读下面的程序,分析代码是否可以编译通过,如果能编译通过,请列出运行 ...
- sqoop从HDFS导出数据到Mysql,卡在Running job: job_1571036741208_0010不动了,或者map 100% reduce 0%不动了
用sqoop从HDFS导出数据到mysql,一直卡在Running job: job_1571036741208_0010,应该是内存太小,导致速度太慢 在 yarn-site-xml中增加下面两个, ...
- arcgis for Android 100.3.0 加载shp数据以及操作
ArcGIS Runtime 100.2.0的正式发布带来个更多移动端的处理地图的能力,例如支持WMS图层.支持海图(ENC)图层,再如基于场景相机(Camera)的视域分析.同时还提供了新的统计查询 ...
- Leetcode打卡四:将给定的单链表L: L 0→L 1→…→L n-1→L n, 重新排序为: L 0→L n →L 1→L n-1→L 2→L n-2→… 要求使用原地算法,并且不改变节点的
题目: 将给定的单链表L: L 0→L 1→-→L n-1→L n, 重新排序为: L 0→L n →L 1→L n-1→L 2→L n-2→- 要求使用原地算法,并且不改变节点的值 例如: 对于给定 ...
- 100.64.0.0/10 运营商级NAT(Carrier-grade NAT)共享地址空间
在一次跟踪路由的网络操作时发现自己路由器下一跳路由节点的IP地址比较奇怪,是100.64.0.1.好奇促使我查询了这个IP地址的归属,结果是保留地址,到这里觉得比较奇怪了,按照常理以IPv4为例保留的 ...
- 试题 基础练习 阶乘计算 (n!可能很大,而计算机能表示的整数范围有限,需要使用高精度计算的方法。使用一个数组A来表示一个大整数a,A[0]表示a的个位,A[1]表示a的十位,依次类推。 将a乘)
问题描述 输入一个正整数n,输出n!的值. 其中n!=123*-*n. 算法描述 n!可能很大,而计算机能表示的整数范围有限,需要使用高精度计算的方法.使用一个数组A来表示一个大整数a,A[0]表示a ...
最新文章
- 数据结构与算法(六)-背包、栈和队列
- 1062. Talent and Virtue (25)
- C++primer第九章 顺序容器 9.6 容器适配器
- c语言下标法与指针法,《C和指针》中关于指针与下标的问题
- dynamic 找不到编译动态表达式所需的一种或多种类型。是否缺少引用?
- 医药电商、线上药房、连锁药店、用药咨询、药箱补货、药师认证、分销商、合伙人、医生管理、诊所管理、处方药、收银、发票、电子会员卡、门店调拨、提成分销、问诊咨询、积分、顾客、流程图、业务逻辑、营销、优惠
- 剑指Offer(Java版):把字符串转换成整数
- poj 2182 给你每个数前面有几个数比他小让你输出次数的编号
- CSS BACKGROUND汇总
- delphi 获取数组长度_shell 普通数组
- 如何用微信自动添加wifi连接服务器地址,微信服务号如何实现扫码自动连接WIFI?详细步骤介绍!...
- VR全景:三维电商势不可挡
- typedef和define
- [附源码]Python计算机毕业设计_旅游系统
- 用python玩转数据慕课答案_大学慕课用Python玩转数据章节测验答案
- 基于PyQt5的简易计算器
- python通过Tkinter库实现的一个简单的文本编辑器源码
- 【牛客网华为机试】HJ46 截取字符串
- 私货:广州化龙考场科目二介绍
- 社群裂变有哪些工具?做社群裂变怎么选择工具?