Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Задачка про поиск в матрице
|
|||
|---|---|---|---|
|
#18+
Здравствуйте. Задача: Есть матрица 6*6, нужно проверить есть ли в ней последовательность из 4-х одинаковых элементов. Последовательность может быть по вертикали/горизонтали/вертикали. Мое решение представлено ниже: Код: plaintext 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. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. Выводимые 1,2,3 говорят где найдена последовательность, 0 не найдена. Я не учел побочную диагональ потому что уже не считаю это решение оптимальным, выходит слишком громоздко, но работает. Я не прошу написать код за меня, достаточно указать в каком направлении копать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2016, 17:48 |
|
||
|
Задачка про поиск в матрице
|
|||
|---|---|---|---|
|
#18+
cpp22достаточно указать в каком направлении копать. А зачем куда-то копать? Если код работает - вот и чудненько. Если не работает - надо отлаживать. В чём проблема-то?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2016, 18:38 |
|
||
|
Задачка про поиск в матрице
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, проблема в том что задача решается в <20 строк(преподаватель сказал), а значит мое решение не оптимально. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2016, 18:44 |
|
||
|
Задачка про поиск в матрице
|
|||
|---|---|---|---|
|
#18+
cpp22проблема в том что задача решается в <20 строк(преподаватель сказал), а значит мое решение не оптимально. Вспоминая свой первый курс и придерживаясь методологии KISS, я бы написал так: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. Итого 15 строк, включая комментарии и скобки. PS: Меньшее число строк не всегда означает большую оптимальность. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2016, 19:06 |
|
||
|
Задачка про поиск в матрице
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, спасибо, но Ваше решение не верно: Если последовательность имеется, например, в последней строке, то будет false. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2016, 19:31 |
|
||
|
Задачка про поиск в матрице
|
|||
|---|---|---|---|
|
#18+
cpp22Ваше решение не верно: Если последовательность имеется, например, в последней строке, то будет false. Уверен? Проверил?.. Думаешь, там зря что ли циклы по всей матрице?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2016, 19:34 |
|
||
|
Задачка про поиск в матрице
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov, Вот такой пример, в самом конце 3 последовательности и все 3 не найдены. Код: plaintext 1. 2. 3. 4. 5. 6. 7. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2016, 19:47 |
|
||
|
Задачка про поиск в матрице
|
|||
|---|---|---|---|
|
#18+
Dimitry Sibiryakov(i>3&& j<2 Хотя да, ты прав, ограничения везде должны быть другими: >2 и <3 соответственно. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2016, 19:49 |
|
||
|
Задачка про поиск в матрице
|
|||
|---|---|---|---|
|
#18+
cpp22все 3 не найдены. Проблема не в том, что они в последней строке, а в том, что они все примыкают к краю. Неправильные магические числа, как я и сказал. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2016, 19:54 |
|
||
|
Задачка про поиск в матрице
|
|||
|---|---|---|---|
|
#18+
cpp22Последовательность может быть по вертикали/горизонтали/вертикалидиагонали ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2016, 21:36 |
|
||
|
Задачка про поиск в матрице
|
|||
|---|---|---|---|
|
#18+
cpp22Dimitry Sibiryakov, проблема в том что задача решается в <20 строк(преподаватель сказал), а значит мое решение не оптимально. Это ничего не значит, не слушайте своего преподавателя. Ваша функция имеет три блока по три цикла. Обратите внимание, что ваши блоки очень похожи друг на друга. Создайте одну функцию(auxilary_f(ps)), которая будет принимать в вашем случае около 12-15 параметров. Таким образом основная функция будет занимать три строчки с вызовом auxilary_f() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 14:04 |
|
||
|
Задачка про поиск в матрице
|
|||
|---|---|---|---|
|
#18+
Скушная задача. Давайте решим оригинально. В задаче ведь не сказано указать где они лежат. Нам нужна просто функция-предикат которая говорит что дескыть есть 4 одинаковых. И все. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 16:10 |
|
||
|
Задачка про поиск в матрице
|
|||
|---|---|---|---|
|
#18+
maytonСкушная задача. Давайте решим оригинально. Саша почти решил 19207658 . Только с количеством параметров перестарался. Достаточно трижды вызвать: Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 17:28 |
|
||
|
Задачка про поиск в матрице
|
|||
|---|---|---|---|
|
#18+
Давайте продиффиренцируем матричку. Вместо циклов сделаем рекурсии. Короче... удивим старика. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 17:32 |
|
||
|
Задачка про поиск в матрице
|
|||
|---|---|---|---|
|
#18+
maytonДавайте продиффиренцируем матричку. Вместо циклов сделаем рекурсии. Короче... удивим старика. Длиннее получится, памяти потребуется больше , так как нужно будет хранить маршруты, что бы определять когда нужно выныривать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 18:29 |
|
||
|
Задачка про поиск в матрице
|
|||
|---|---|---|---|
|
#18+
maytonДавайте продиффиренцируем матричку. Вместо циклов сделаем рекурсии. Короче... удивим старика. Да и сами удивимся. Наше все - заменить рекурсию на цикл, а тут все наоборот надо вывернуть. Тут надо сильно постараться, помощники нужны — Степан! У гостя карета сломалась. — Вижу, барин. Ось полетела. И спицы менять надо. — За сколько сделаешь? — За день сделаю. — А за два? — Ну… За… Сделаем и за два. — А за пять дней? — Ну, ежели постараться — можно и за пять. — А за десять? — Ну, барин, ты задачи ставишь! За десять дён одному не справиться, тут помощник нужен — хомо сапиенс! — Бери помощников, но чтобы не раньше! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 18:58 |
|
||
|
Задачка про поиск в матрице
|
|||
|---|---|---|---|
|
#18+
Какие вы неспортивные. Мне вот данная задачка напомнила алгоритмы японских кроссвордов где надо отгадывать картинку на клеточном поле. Вобщем в этой задаче "крест" из двух вертикальных и двух горизонтальных линий определяет принципиальную возможность существования 4х одинаковых. Вобщем подумайте... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2016, 19:30 |
|
||
|
Задачка про поиск в матрице
|
|||
|---|---|---|---|
|
#18+
Поиск всех. С рекурсией. Код: plaintext 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 07:57 |
|
||
|
Задачка про поиск в матрице
|
|||
|---|---|---|---|
|
#18+
не учтена вторая диагональ ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 08:35 |
|
||
|
Задачка про поиск в матрице
|
|||
|---|---|---|---|
|
#18+
wstне учтена вторая диагональ точно добавил Код: plaintext 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. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 09:06 |
|
||
|
Задачка про поиск в матрице
|
|||
|---|---|---|---|
|
#18+
Эх не играли вы в морской бой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 11:11 |
|
||
|
Задачка про поиск в матрице
|
|||
|---|---|---|---|
|
#18+
Но лучше всего идея видна на малых полях. В строке, где количество cells=12 я сразу не думая отмечаю центр. Шириной в 6 cells. 18-12 = 6 http://www.nonograms.org/nonograms/i/6954 В нашей постановке если центр занят меняющимися цифрами - то расположить четверку одинаковых цифр невозможно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 19:22 |
|
||
|
Задачка про поиск в матрице
|
|||
|---|---|---|---|
|
#18+
maytonВ нашей постановке если центр занят меняющимися цифрами - то расположить четверку одинаковых цифр невозможно. Проблема, однако, в том, что наличие повторяющихся цифр в центре не гарантирует наличие таковой четвёрки. То есть мы за счёт увеличения сложности кода можем уменьшить время выдачи отрицательного ответа в ряде случаев, но время выдачи положительного ответа при этом вырастет. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 19:29 |
|
||
|
Задачка про поиск в матрице
|
|||
|---|---|---|---|
|
#18+
maytonВ нашей постановке если центр занят меняющимися цифрами - то расположить четверку одинаковых цифр невозможно. покажи где твой центр Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.05.2016, 20:19 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=39240962&tid=2018510]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
70ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
1ms |
| others: | 271ms |
| total: | 436ms |

| 0 / 0 |
