Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Реализуйте алгоритм бинарного поиска https://www.cyberforum.ru/ cpp-beginners/ thread2491881.html
Не могу понять в чем ошибка, за задачу 0 балов. Входные данные В первой строке входных данных содержатся натуральные числа N и K (0NK100000). Во второй строке задаются N элементов первого массива,...
C++ Cout объект?
привет! class exem{ public: int a=11;
C++ Заменить все повторяющиеся символы на другой символ https://www.cyberforum.ru/ cpp-beginners/ thread2491801.html
Строка "ASDASdsadawqqwr+==we//sadwq==" Нужно заменить все '=' на '/'
C++ Метод класса стирает массив https://www.cyberforum.ru/ cpp-beginners/ thread2491773.html
#include<iostream> #include<string> using namespace std; class Sstring { public: Sstring() { SizeStr = 10; char massiv = { 'a','b','c','d','e','f','g','h','j','@' };
В массиве найти первые три максимальных элемента,без сортировки C++
Алгоритм. 1.Размер массива равен 0. 2.Пока не найдены все max: 0)flag=false; a) взять элемент массива: -сравнить есть ли данный элемент --если есть ,то перейти на пункт а. --если нет то
C++ Возврат c-style строки из функции https://www.cyberforum.ru/ cpp-beginners/ thread2491769.html
Здравствуйте, пытаюсь решить задачу на степике, но не получается. Поэтому воспользовался Qt и дебагером. Вроде всё проходит во время, но не могу правильно вернуть строку в main(), что бы вывести её...
C++ Проверка введённых цифр https://www.cyberforum.ru/ cpp-beginners/ thread2491767.html
Добрый день. Пользователь может ввести любые символы в любом количестве. Я же хочу, чтобы в программе была красивая проверка: программа должна вызвать функцию, если было введено 4 цифры, разделённые...
Const методы суффиксная/префиксная запись C++
Какая разница между этими записями? const void Method(); void Method() const
C++ Как метод класса возвращает обьект, который является одним из полей данного класса? Привет! Когда я пытался изменять объект который вернул мне метод класса, полем или свойством которого был этот обьект, я как будто получал копию этого объекта. Он не изменялся. Тогда я попробовал... https://www.cyberforum.ru/ cpp-beginners/ thread2491758.html C++ Удаление слов в кавычках с учётом экранирования Добрый вечер! Есть у меня проблема.Мне надо удалить в строки все слова с кавычками(с учётом экранирования т.е. если в строке я нахожу \знак то я пропускаю два знака и проверяю дальше ) и вроде я... https://www.cyberforum.ru/ cpp-beginners/ thread2491750.html
C++ Инициализация класса через многоточие
Пытаюсь воспользоваться библиотекой https://github.com/gosha20777/keras2cpp Но не могу ее собрать. Писал автору https://github.com/gosha20777/keras2cpp/issues/16 но он отвечать не торопится. ...
C++ Полиморфизм в C++ Предположим, что есть родительский класс Parent с виртуальным методом update с одним целочисленным аргументом. Есть также унаследованный от этого класса класс Child, у которого есть метод с таким же... https://www.cyberforum.ru/ cpp-beginners/ thread2491738.html
567 / 406 / 132
Регистрация: 22.11.2017
Сообщений: 1,043
18.08.2019, 14:37 0

Вывести количество подряд идущих элементов - C++ - Ответ 13777374

18.08.2019, 14:37. Показов 3651. Ответов 10
Метки (Все метки)

Ответ

Yetty, а группы цифр могут повторяться?
5 5 4 9 5 5 5 7

Добавлено через 2 минуты
Цитата Сообщение от Yetty Посмотреть сообщение
количество подряд идущих одинаковых 2+2+3=7
Если цифры не повторяютя.
Кликните здесь для просмотра всего текста

C++
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
26
27
28
29
30
31
#include <iostream>
#include <unordered_map>
 
//Для вывода массива на консоль через std::cout << ... << arr << ...;
template<size_t N>
std::ostream& operator<< (std::ostream& os, int(&arr)[N])
{
    for (auto value : arr)
        os << value << " ";
    return os;
}
 
int main()
{
    setlocale(LC_ALL, "Rus");
 
    int arr[] = { 5, 5, 2, 2, 4, 10, 10, 10 };
    size_t count_in_arr = sizeof(arr) / sizeof(arr[0u]); //Размер массива
    std::cout << "Исходное содержание массива\n" << arr << "\n";
 
    std::unordered_map<int, size_t> value_count;
    for (auto value : arr)
        ++value_count[value];
    size_t count_repeat = 0u;
    for (const auto& p : value_count)
        if (p.second > 1u)
            count_repeat += p.second;
    std::cout << count_repeat << "\n";
 
    return 0;
}


Добавлено через 4 минуты
Yetty, если цифры могут повторяться вне группы.
Кликните здесь для просмотра всего текста

C++
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include <iostream>
#include <unordered_map>
 
//Для вывода массива на консоль через std::cout << ... << arr << ...;
template<size_t N>
std::ostream& operator<< (std::ostream& os, int(&arr)[N])
{
    for (auto value : arr)
        os << value << " ";
    return os;
}
 
int main()
{
    setlocale(LC_ALL, "Rus");
 
    int arr[] = { 5, 5, 2, 2, 4, 10, 10, 10, 5, 5, 5 };
    size_t count_in_arr = sizeof(arr) / sizeof(arr[0u]); //Размер массива
    std::cout << "Исходное содержание массива\n" << arr << "\n";
 
    int old = arr[0u];
    size_t acc = 0u;
    size_t count_repeat = 0u;
    for (auto it = arr + 1u; it != arr + count_in_arr; old = *it++)
    {
        if (old == *it)
            ++acc;
        else
        {
            if (++acc > 1u)
                count_repeat += acc;
            acc = 0u;
        }
    }
    if (++acc > 1u)
        count_repeat += acc;
    std::cout << count_repeat << "\n";
 
    return 0;
}


Вернуться к обсуждению:
Вывести количество подряд идущих элементов C++
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.08.2019, 14:37
Готовые ответы и решения:

Вывести наибольшее количество пробелов, идущих подряд
Из файла считывается текст и выводится наибольшее количество пробелов, что идут подряд. Помогите,...

Количество подряд идущих отрицательных элементов
Задание простое, просто хочу по-нормальному его растолковать. Дается целочисленный массив из 30...

Количество положительных элементов, идущих подряд
Определить наибольшее число положительных элементов, идущих подряд, в массиве А.

Найти наименьшее количество одинаковых, идущих подряд элементов
Дан вектор размерности N. Найти наименьшее количество одинаковых, идущих подряд элементов.

10
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.08.2019, 14:37

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Подсчитать максимальное количество подряд идущих отрицательных элементов.
Дан одномерный массив А, состоящий из N элементов. Подсчитать максимальное количество подряд идущих...

Найти максимальное количество подряд идущих чётных элементов
Мне дана задача : опишите на одном из языков программирования алгоритм подсчета максимального...

Найти максимальное количество подряд идущих минимальных элементов
Найти максимальное количество подряд идущих минимальных элементов. ОДНОПРОХОДНОЙ алгоритм

Как найти максимальное количество подряд идущих элементов?
Всем привет! У нас есть массив который задается пользователем(цифры 0 или 6) int depo; Как...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.