Форум программистов, компьютерный форум, киберфорум
Java для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
Другие темы раздела
Java Шейкерная сортировка с очисткой дубликатов https://www.cyberforum.ru/ java-beginners/ thread2184939.html
Почему удаляются все буквы "h" ? Ожидаемый результат: "abdhw" import java.util.concurrent.TimeUnit; import static java.lang.System.*; public class J001 { public static void main(String args) throws Exception { String s1 = "aaabbdbw";
Java Для ряда, члены которого вычисляются по формуле, подсчитать сумму членов
Для ряда, члены которого вычисляются по формуле, подсчитать сумму членов ряда с точностью до 0.000001 и сумму первых 10 членов ряда. Если Вы считаете это необходимым, можете упростить или превратить выражение. 1) 2)
Java Несоответствующее смещение данных в массиве https://www.cyberforum.ru/ java-beginners/ thread2181411.html
При нажатии кнопки движения, курсор должен перемещаться в соотв. направлении, но двигается только вверх, помогите пожалуйста? import javax.swing.*; import java.awt.*; import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import java.awt.image.BufferStrategy; public class Game extends Canvas implements Runnable{ int x,y,dx,dy,ts=32;
Java Дана матрица размера m* n. Найти сумму наибольших значений элементов ее строк https://www.cyberforum.ru/ java-beginners/ thread2180443.html
Предложения как решить даную задачу : "дана матрица размера m* n. Найти сумму наибольших значений элементов ее строк java"
Сортировка вектора целых чисел методом пузырька Java
Используя классы Random и Vector создать вектор целых чисел длинной n=10. Провести сортировку методом пузырька.
Java Как рассчитать траекторию полёта космического аппарата с Земли на Марс? https://www.cyberforum.ru/ java-beginners/ thread2173347.html
Как расчитать траекторию полёта комического аппарат с Земли на Марс? http://e-libra.su/read/220870-na-zov-tainstvennogo-marsa.html
Java Найти первое отрицательное число последовательности u = cos ( ctg ( n ), где n =1,2,3 Пример: Вычислить S = sinx + sin^2x + .+ sin^nx. Пишем дополнительную программу для предотвращения ошибок при вводе чисел, где также создаём объект класса Scanner. Используем типы данных int и double для ввода значений. Вводим значения n, x с выводом на экран соответствующего приглашения. Используя цикл с параметром, находим s и выводим полученное значение на экран. package com.company; import... https://www.cyberforum.ru/ java-beginners/ thread2172184.html Java Найти числа, являющиеся палиндромами (как положительные, так и отрицательные)
Задача, найти числа являющиеся палиндромами... в принципе, примеры найти в интернете с положительными цифрами, не проблема. Ну а если числа отрицательные, как быть? То есть найти и положительные, и отрицательные. Есть такой код с положительными... int a = {123, 33, -23, -626, 71, 87, 939, -345, 238}; for (int key : a) { int result = 0; while (key > 0) {
Java Заполнить матрицу числами, вычислить сумму заданной строки и столбца https://www.cyberforum.ru/ java-beginners/ thread2171875.html
Здравствуйте! Два дня бьюсь над этим заданием, не получается понять, как правильно задать значения и чтобы выводилось так, как нужно. Вот полное задание: Написать программу Java, которая инициализирует матрицу n*n заданного пользователем размера и заполняет ее нулями и предлагает пользователю меню выбора: " Какой размер должна иметь n*n матрица (n)? (Пример: 3) Матрица выглядит...
Java Не могу нигде найти - как преобразовать массив int в строку, или сразу в число https://www.cyberforum.ru/ java-beginners/ thread2171817.html
Народ помогите пожалуйста. Число long 9876543210 было переведено в int namArr = {9876543210}. После определенных преобразований, измененный int namArr = {9497845421} нужно перевести в соответствующее число. Возможно поэтапно через строку. String j = String.join("",namArr), естественно не работает. В лит-ре в основном про перевод строковых массивов. Про int ... нету.
Java Как найти рабочий стол?
Как найти рабочий стол текущего пользователя в виде String или File? Интересует Windows. Надо учитывать, что пользователь необязательно в C:\Users\ находится.
Java Серединая сортировка //Даны натуральное число n и вещественные числа х1, х2,...Х(н). Найти количество //вещественных чисел которые больше своих "соседей", т.е предшествущего и //последуещего. Массивы, методы использовать нельзя. // 5 4 6 7 8 9 0 --- // 5 (4) 6 // 4 (6) 7 // 6 (7) 8 // 7 (8) 9 // 8 (9) 0. https://www.cyberforum.ru/ java-beginners/ thread2171704.html
386 / 74 / 31
Регистрация: 13.04.2012
Сообщений: 127
06.02.2018, 23:39 0

Наибольшее число N в массиве, встречающееся столько же N раз - Java - Ответ 12097613

06.02.2018, 23:39. Показов 1017. Ответов 7
Метки (Все метки)

Ответ

Цитата Сообщение от Silury Посмотреть сообщение
Вот это понятно, спасибо! Alias, если не секрет, сколько времени вам понадобилось?
По идее я должен был решить это задание минут за 15-20, но..
Вот ваш вариант с учётом -1:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
public static int NmalN(int[] arr) {
 
    int zahl = 0;
    int counter = 0;
    int max = 0;
 
    for (int i=0; i<arr.length; i++) {
        for (int j=0; j<arr.length; j++) {
            if (arr[i] == arr[j]) {
                counter++;
                zahl = arr[i];
            }
        }
        if (zahl == counter && zahl > max) {
            max = zahl;
        }
        if (zahl == 0 && max == 0) {
            max = -1;
        }
        counter = 0;
 
    }
 
    return max;
}
И два других варианта:
Кликните здесь для просмотра всего текста
Мой исправленный вариант:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
public static int getNum(int[] nums) {
    nums = Arrays.copyOf(nums, nums.length);
    Arrays.sort(nums);
    int res = 0, current = 0, count = 1;
    for (int i = 0; i < nums.length;) {
        current = nums[i];
        while (++i < nums.length && nums[i] == current) {
            count++;
        }
        if (current == count) {
            res = current;
        }
        if (current == 0) {
            res = -1;
        }
        count = 1;
    }
    return res;
}
И в довесок ещё один вариант, похожий на решение xoraxax, только без stream'ов:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
public static int getNumWithMap(int[] nums) {
        Map<Integer, Integer> occurs = new HashMap<>();
        for (int i = 0; i < nums.length; i++) {
            occurs.put(nums[i], occurs.getOrDefault(nums[i], 0)+1);
        }
        occurs.put(0, occurs.getOrDefault(0, 0));
        int max = -1;
        for (Map.Entry<Integer, Integer> entry : occurs.entrySet()) {
            if (entry.getKey() == entry.getValue() && entry.getKey() > max) {
                max = entry.getKey();
            }
        }
        return max;
    }

Ничего более умного, чем просто проверить на ноль, не нашёл.

Вернуться к обсуждению:
Наибольшее число N в массиве, встречающееся столько же N раз Java
1
Заказать работу у эксперта
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.02.2018, 23:39
Готовые ответы и решения:

Найти число, встречающееся в массиве наибольшее число раз
На входе массив из двадцати элементов с целыми числами в диапазоне . Нужно найти число,...

Распечатайте наименьшее число столько раз, сколько наибольшее число
Дайте два числа. Распечатайте наименьшее число столько раз, сколько наибольшее число. например: 2 ...

Найти число встречающееся в списке наибольшее количество раз
Напишите программу, которая находит в данном списке A число, которое встречается в списке...

Одномерные массивы. Найти число, встречающееся наибольшее количество раз
Задан массив целых чисел от -100 до 100. Найти число, встречающееся наибольшее количество раз

7
06.02.2018, 23:39
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.02.2018, 23:39
Помогаю со студенческими работами здесь

Определить число, встречающееся в последовательности наибольшее количество раз (массивы)
Определить,какое число в последовательности встречается наибольшее кол-во раз. Если таких элементов...

В массиве найти число, встречающееся наименьшее количество раз
Составьте программу, отыскивающую в одномерном массиве A(N) число, встречающееся наименьшее...

Отыскать в массиве число, встречающееся наименьшее количество раз
составьте программу,отыскивающую в одномерном массиве A(N) число, встречающееся наименьшее...

Отыскать в одномерном массиве число, встречающееся наименьшее количество раз
1. Составьте программу, отыскивающую в одномерном массиве A(N) число, встречающееся наименьшее...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru