Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.11.2020, 20:01   #1
SuperHot213
Новичок
Джуниор
 
Регистрация: 29.11.2020
Сообщений: 1
Вопрос Проблема с последовательностью

Есть код, который должен генерировать последовательность по следующему правилу: 11, 12, 1121, 1321, 122131, 132231, 122232, 112431, … ,. Но при n > 4, генерация идет неправильно, как это можно исправить?(P.S. Эта последовательность не является look-and-say, но схожесть имеется.)
Код:
string sequence(int n)
{
    if (n == 1) return "1";
    if (n == 2) return "11";
    string s = "11";
    int count = 1;
    for (int i = 3; i < n + 1; i++)
    {
        s = s + "$";
        int l = s.length();
        string t = "";
        for (int j = 1; j < l; j++)
        {
            if (s[j] == s[j - 1]) count++;
            else
            {
                t = t + s[j - 1];
                t = t + to_string(count);
                count = 1;
            }
        }
        s = t;
    }
    return s;
}
SuperHot213 вне форума Ответить с цитированием
Старый 29.11.2020, 23:44   #2
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,291
По умолчанию

Нужно посчитать количество упоминаний каждой цифры во всей строке, а не только тех, что идут подряд. Лучше, наверное, завести массив счетчиков, считать количество, затем из массива формировать результирующую строку.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Операции с последовательностью anVys Общие вопросы C/C++ 0 09.12.2017 23:25
хитрость с последовательностью IT-school Паскаль, Turbo Pascal, PascalABC.NET 6 11.01.2014 13:56
Проблема с последовательностью. dimka123 Паскаль, Turbo Pascal, PascalABC.NET 3 19.12.2013 09:23
Нужна помощь с последовательностью tasik_ua Помощь студентам 2 27.11.2013 21:50
Помогите с последовательностью ==Terman== Microsoft Office Excel 5 06.06.2009 12:37