文章目录
题目来源题目描述输入描述:输出描述:
解题思路-`String.split(String str)`和`Integer.valueOf(String str)`的使用实现代码
题目来源
https://www.nowcoder.com/questionTerminal/eac8c671a0c345b38aa0c07aba40097b
题目描述
输入n个整数,输出出现次数大于等于数组长度一半的数。
输入描述:
每个测试输入包含 n个空格分割的n个整数,n不超过100,其中有一个整数出现次数大于等于n/2。
输出描述:
输出出现次数大于等于n/2的数。
示例1
输入
3 9 3 2 5 6 7 3 2 3 3 3
输出
3
解题思路-String.split(String str)和Integer.valueOf(String str)的使用
用String类型的变量接收输入的一行。用String.split(" ")空格作为分割符,达到去空格目的。设一个int[]来存放要判断的所有数找出出现次数达到n/2的数并返回。
实现代码
import java
.util
.*
;
public class Main{
public static void main(String
[] args
) {
Scanner sc
= new Scanner(System
.in
);
String str
= sc
.nextLine();
String
[] temp
= str
.split(" ");
int[] array
= new int[temp
.length
];
int n
= array
.length
;
for (int i
= 0; i
< n
; i
++) {
array
[i
] = Integer
.valueOf(temp
[i
]);
}
int num
= array
[0];
int count
= 0;
for (int j
= 1; j
< n
; j
++) {
if (array
[j
] == num
) {
count
++;
}
if (count
>= n
/2) {
break;
} else {
num
= array
[j
];
}
}
System
.out
.println(num
);
}
}