Форум программистов, компьютерный форум, киберфорум
PascalABC.NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 29.09.2015
Сообщений: 6

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

04.10.2015, 12:45. Показов 1742. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Помогите пожалуйста решить задачу:
Имеется замкнутое ожерелье, состоящее из бусинок одного из трёх возможных цветов: красного, жёлтого, зелёного. Необходимо найти максимальное количество бусинок одно цвета, идущих подряд.
Формат входных данных:
В единственной строке входного файла INPUT.TXT находится последовательность из номеров цветов бусинок: 1, 2, 3. В последовательности не более 100 цифр. Цифры записаны подряд без пробелов.
Формат выходных данных:
Выходной файл OUTPUT.TXT максимальное количество бусинок и номер цвета. Если максимальное количество бусинок одного цвета, идущих подряд равно максимальному количеству бусинок другого цвета, идущих подряд, то выдать меньший номер цвета.
Пример
Input.txt
222123333111133
Output.txt
4 1
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.10.2015, 12:45
Ответы с готовыми решениями:

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

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

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

6
Эксперт Pascal/Delphi
6812 / 4568 / 4820
Регистрация: 05.06.2014
Сообщений: 22,434
04.10.2015, 19:07
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Посчитать наибольшее количество светлых (розовых и желтых) бусин, нанизаны подряд
0
0 / 0 / 0
Регистрация: 29.09.2015
Сообщений: 6
05.10.2015, 06:59  [ТС]
ZX Spectrum-128 Благодарю, но это немного не то, ладно, попробую сам разобраться ,
0
 Аватар для JuriiMW
5095 / 2661 / 2355
Регистрация: 10.12.2014
Сообщений: 10,059
05.10.2015, 07:38
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
procedure Examen(curCount : Integer; curColor : Char;
          var maxCount : Integer; var maxColor : Char);
begin
  if (curCount > maxCount) or ((curCount = maxCount) and (maxColor > curColor)) then
    begin
      maxCount := curCount; maxColor := curColor;
    end;
end;
 
begin
  var S := System.IO.File.ReadAllText('input.txt');
  var maxCount := 0; var maxColor := '9';
  var curCount := 0; var curColor := '9';
  for var i := 1 to S.Length do
    if curColor <> S[i] then
      begin
        Examen(curCount, curColor, maxCount, maxColor);
        curCount := 1; curColor := S[i];
      end
    else
      curCount += 1;
  Examen(curCount, curColor, maxCount, maxColor);
  System.IO.File.WriteAllText('output.txt', maxCount.ToString + #32 + maxColor);
end.
0
Почетный модератор
 Аватар для Puporev
64314 / 47610 / 32743
Регистрация: 18.05.2008
Сообщений: 115,168
05.10.2015, 10:29
Цитата Сообщение от Elyrin Посмотреть сообщение
Имеется замкнутое ожерелье,
Что-то из приведенного решения это не видно.
0
 Аватар для JuriiMW
5095 / 2661 / 2355
Регистрация: 10.12.2014
Сообщений: 10,059
05.10.2015, 10:42
Puporev, да-а-а… Уж!
Вот доделал (см.строки с комментами ;–)
Pascal
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
procedure Examen(curCount : Integer; curColor : Char;
          var maxCount : Integer; var maxColor : Char);
begin
  if (curCount > maxCount) or ((curCount = maxCount) and (maxColor > curColor)) then
    begin
      maxCount := curCount; maxColor := curColor;
    end;
end;
 
begin
  var S := System.IO.File.ReadAllText('input.txt');
  var fstCount := 0; var allChanges := -1; // Количество первых и сколько раз менялся цвет
  var maxCount := 0; var maxColor := '9';
  var curCount := 0; var curColor := '9';
  for var i := 1 to S.Length do
    if curColor <> S[i] then
      begin
        if allChanges = 1 then fstCount := curCount; // Количество первых
        allChanges += 1; // Смена цвета номер...
        
        Examen(curCount, curColor, maxCount, maxColor);
        curCount := 1; curColor := S[i];
      end
    else
      curCount += 1;
  if (allChanges > 0) and (S[1] = curColor) then curCount += fstCount; // Первый + последний, если цвета совпадают
  Examen(curCount, curColor, maxCount, maxColor);
  System.IO.File.WriteAllText('output.txt', maxCount.ToString + #32 + maxColor);
  WriteLn(maxCount.ToString + #32 + maxColor);
end.
1
0 / 0 / 0
Регистрация: 29.09.2015
Сообщений: 6
05.10.2015, 11:55  [ТС]
JuriiMW Спасибо огромное!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
05.10.2015, 11:55
Помогаю со студенческими работами здесь

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

максимальное количество подряд идущих элементов,
Помогите пожалуйста решить следующую задачу, вроде с паскалём работаю давно, а решить не получается: Дан массив из 30 элементов....

Подсчитать максимальное количество подряд идущих совпадающих элементов
2. Опишите на русском языке или одном из языков программирования алгоритм подсчета максимального количества подряд идущих совпадающих...

Найти наибольшее количество идущих подряд цифр
Дан текст . Найти наибольшее количество идущих подряд цыфр . Добавлено через 17 часов 15 минут Я думаю так. uses crt; var ...

Определить количество чисел в наиболее длинной подпоследовательности из подряд идущих чисел одного знака
Дана непустая последовательность не нулевых целых чисел, за которой следует 0: Определить количество чисел в наиболее длинной...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru