资源限制
内存限制:256.0MB C/C++时间限制:1.0s Java时间限制:3.0s Python时间限制:5.0s
问题描述
编写一个程序,计算递增数组的众数。程序第一行输入n(1≤n≤20),表示数组的长度;第二行输入数组中各个元素的值。输出数组中出现次数最多的元素。如果有两个元素出现的次数相同,即并列第一,那么只输出较小的那个元素。(注:输入的数组是递增数组,已经排好序,程序中不需要进行排序)
样例输入
6
100 150 150 200 200 250
样例输出
150
package 算法训练;
import java.util.Scanner;
public class ALGO485 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[] arr = new int[n];
for (int i = 0; i < n; i++) {
arr[i] = sc.nextInt();
}
sc.close();
int count = 0;
int maxCount = 0;
int num = 0;
int maxNum = arr[0];
for (int i = 0; i < arr.length - 1; i++) {
if (arr[i] == arr[i + 1]) {
count++;
num = arr[i];
}else {
count = 0;
}
if (count > maxCount) {
maxCount = count;
maxNum = num;
}
}
System.out.println(maxNum);
}
}