Furious_Angel, плохо. Про списки и указатели знаешь? Если да, тогда прогу можно сделать, если нет, тогда упс. Я предлагаю в какой-нибудь динам стр-ре хранить номера первых эл-тов всех одинаковых по длине послед-ей.
|
Furious_Angel, плохо. Про списки и указатели знаешь? Если да, тогда прогу можно сделать, если нет, тогда упс. Я предлагаю в какой-нибудь динам стр-ре хранить номера первых эл-тов всех одинаковых по длине послед-ей.
здесь завуалированный мат
можна и без динов :)
просто сделать большую матрицу, и при необходимости запихивать в неё равнобольние последовательности или номера начального элемента и их количество :)
правда это расход памяти и вообще плохая практика :)
~ Motivation is what gets you started. Habit is what keeps you going.
а мыслей попроще ни у кого нет? мне ж ее еще описать надо.. и алгоритм сделать... эхъъ... до субботы... ых
Блаженна жизнь, пока живешь без дум. (с) Софокл
Я так понимаю суббота уже прошла, так что вопрос можно считать зарытым, хотя может быть и не решенным.
здесь завуалированный мат
ыыыы.....ненада темку закрывать плс! нам ниче не говорили толком но таккак препод отсутствует сдача будет в след субботу если не позже)
Блаженна жизнь, пока живешь без дум. (с) Софокл
8)Сообщение от Furious_Angel
Что ж ты раньше не сказала, а все уже расслабились...
Кароче повторюсь - без динамических стр-р делать прогу ОЧЕНЬ не красиво. Более того - НЕ правильно. Как ранее написал Яр, можно использовать мега большую матрицу/массив - это не про нас!-)
Зачем нужно использовать динам массивы - дело в том, что заранее не известно, сколько неубывающих последовательностей одиноковой длины мы получим. И что не менее важно, надо знать не только их кол-во, но и Индексы первых эл-тов каждой такой последовательности.
В кач-ве динам массива можно использовать
- n-направленные списки (что я бы посоветовал);
- строки (string) - туда можно без проблем дописывать (Concat), вставлять (Insert), удалять (Delete) и т.д. не зря же string is array of char;
- множества (set) - но это извращение...
здесь завуалированный мат
mancurt, можно и без динов и без матриц :)
примерный алгоритм:
1. Ищем длину l максимальной последовательности в массиве.
2. Положить равным i=1.
3. Начинаем идти с i-го элеметра до конца, выделяя встречающиеся последовательности, длиной l.
4. Если встреченная последовательность - длины l, то выводим её на экран, ложим i=i+l и переходим к пункту 3
это я так, на вскидку :)
правда положения этих последовательностей не сохраняются, но ведь в задании требуется только вывести?
~ Motivation is what gets you started. Habit is what keeps you going.
Яр, тогда массив прийдется проходить два раза.
...таки можно без динамики. Я о двойном проходе как-то не подумал.
здесь завуалированный мат
Социальные закладки