配列に追加せずに入力を読み取るだけの多数要素を見つけることはできますか? 私のコードは、数値の大きな違いがあるため、大きな入力では機能しません。
私は自分の間違いを見つけます。そこに正しいコード:
int n = Integer.parseInt(bin.readLine()); // read number of data
int h = 0; //input data
int count = 1; //counter
int lf = 0; // last top counting
int first = 0; // top counter num
for (int x = 0; x < n; x++) {
lf = h;
h = Integer.parseInt(bin.readLine());//read input number
if (x == 0) {
first = h;
}
if (h == first) {
count++;
} else {
count--;
}
if (count == 0) {
first = lf;
count = 1;
}