Страница: 1 |
Страница: 1 |
Вопрос: Подстроки в строке
Добавлено: 25.06.10 12:24
Автор вопроса: KiZ
Приветствую. Помогите советами хотябы по алгоритму:
Есть столбец ячеек, в каждой из которых содержится последовательность одинаковой длинны L из 0 и 1. Найти последовательнось единиц, которая входит в имеющуюся последовательность максимальное кол-во раз.
Например: 1100110111010101 - получаем:
1 - 3
11 - 2
111 - 1
1111-0
и т. д.
Спасибо.
Ответы
Всего ответов: 14
Номер ответа: 1
Автор ответа:
Администратор
ICQ: 278109632
Вопросов: 42
Ответов: 3949
Web-сайт:
Профиль | | #1
Добавлено: 25.06.10 13:00
Номер ответа: 2
Автор ответа:
KiZ
Вопросов: 27
Ответов: 68
Профиль | | #2
Добавлено: 25.06.10 13:18
эм... немного не так. Выдает, что максимально ответ - 8. Но нужно не максимально длинную, а максимальное кол-во встречающихся. например в моем примере - ответ. Чаще всего - 1 в кол-ве штук 3. В твоем примере - кстати однозначно сказать нельзя. там и "11' - встречается 2 раза и "1" - тоже 2.
Номер ответа: 3
Автор ответа:
Jasmin
Вопросов: 23
Ответов: 417
Профиль | | #3
Добавлено: 25.06.10 17:13
Номер ответа: 4
Автор ответа:
Jasmin
Вопросов: 23
Ответов: 417
Профиль | | #4
Добавлено: 25.06.10 17:16
Последовательности находятся в колонке А
В 10 строке убираю " из очередного значения. Просто заводила как строки. Можно убрать, можно не убирать замену.
Номер ответа: 5
Автор ответа:
KiZ
Вопросов: 27
Ответов: 68
Профиль | | #5
Добавлено: 28.06.10 11:53
Спасибо, всем кто ответил. Я сделал вот так. В столбце А - находятся последовательности. В последующих столбцах, значения, которые встречаются в последовательности: столбец B - "1"; C-"11" и т.д. конечно громоздко и явно не идеально.
Номер ответа: 6
Автор ответа:
KiZ
Вопросов: 27
Ответов: 68
Профиль | | #6
Добавлено: 28.06.10 11:56
конечно, нужно, чтобы ячейки в столбцах B - и т.д. были пустые), да и кол-во строк в цикле для "k" я вручную вводил) просто запамятовал функцию последней используемой строки на листе
Номер ответа: 7
Автор ответа:
Jasmin
Вопросов: 23
Ответов: 417
Профиль | | #7
Добавлено: 28.06.10 12:59
А почему не подходит ответ 3 ?
Номер ответа: 8
Автор ответа:
KiZ
Вопросов: 27
Ответов: 68
Профиль | | #8
Добавлено: 28.06.10 14:57
хм.. у меня выдает ошибку в 17 строке. "Overflow"
Номер ответа: 9
Автор ответа:
Jasmin
Вопросов: 23
Ответов: 417
Профиль | | #9
Добавлено: 28.06.10 16:46
В ячейках на листе значения типа "1100110111010101" или нет ?
На какой итерации выскакивает ошибка ?
Может есть пустые ячейки в середине списка ? (хотя от этого там заглушка вроде есть .)
Номер ответа: 10
Автор ответа:
KiZ
Вопросов: 27
Ответов: 68
Профиль | | #10
Добавлено: 30.06.10 12:48
ввожу двенадцать единиц.
сразу на первой итерации ошибка. в других случаях ошибка в 13 строке. там значение Ubound = -1. ( для проверки брал 111111011111)
Номер ответа: 11
Автор ответа:
Jasmin
Вопросов: 23
Ответов: 417
Профиль | | #11
Добавлено: 30.06.10 17:40
Поправила:
Номер ответа: 12
Автор ответа:
KiZ
Вопросов: 27
Ответов: 68
Профиль | | #12
Добавлено: 01.07.10 12:37
Здорово) но если хочешь еще подумать, то смотри какая фишка: 10101101101111 - тут "1" - 2 штуки, и "11" - тоже 2 штуки. В твоем случае он пишет, что "1" встречается 2 раза. Но на самом деле она должна выводить "11" - встречается 2 раза. Потому что "11" "лучше", чем "1". Как оказалось впоследствии, это не очень имеет значение...
Номер ответа: 13
Автор ответа:
Jasmin
Вопросов: 23
Ответов: 417
Профиль | | #13
Добавлено: 01.07.10 17:32
А в первоначальной задаче такого не было...(разочарованно )
В 26 строке нужно написать
И пользоваться.
Номер ответа: 14
Автор ответа:
KiZ
Вопросов: 27
Ответов: 68
Профиль | | #14
Добавлено: 02.07.10 13:55
да не) это я для себя уже поэкспериментировать, так сказать) Спасибо за ответы!