|
3189 / 869 / 39
Регистрация: 29.12.2008
Сообщений: 951
|
||||
Нетривиальные задачи по программированию17.06.2009, 21:49. Показов 126350. Ответов 132
Метки нет (Все метки)
Наверное каждый из нас сталкивался с нетривиальными задачами (на олимпиадах, в Интернете, подкидывали друзья, может у кого-то родилась своя). Речь идет не о каких-то сложных задачах, а о интересных головоломках, которые решались бы с помощью какого-нибудь нетривиального трюка, требовали соображалки и вызывали бы интерес и улыбку.
Эти задачи не забываются и я предлагаю вспомнить и выложить их здесь. Таким образом, возможно, соберется небольшой "задачник" для уважаемых форумчан. Это будет полезно. Каждый сможет размять мозг и проверить знания, решая такие задачки. В конце концов это просто забавно Чтобы не было флуда и беспорядка, попробую набросать правила топика:* Задача должна быть действительно оригинальной и интересной, своеобразной головоломкой. * Автор, который публикует задачу, должен располагать её решением. * Решение задачи не должно быть слишком большим, а задача - слишком трудоемкой и требующей много времени. * Допускаются известные и классические задачи. * Публиковать любые решения в топике только под тегом CUT. Начну пожалуй с задачи, которая уже встречалась на этом форуме и стала уже классической:
12
|
||||
| 17.06.2009, 21:49 | |
|
Ответы с готовыми решениями:
132
нетривиальные алгоритмы задачи по программированию Задачи по программированию |
| 12.10.2009, 16:46 | |
|
0
|
|
|
2838 / 1647 / 254
Регистрация: 03.12.2007
Сообщений: 4,222
|
|
| 12.10.2009, 17:50 | |
|
0
|
|
|
|
||
| 12.10.2009, 22:05 | ||
|
Заводишь массив из M элементов и обнуляешь его. Дальше идёшь по основному массиву из N элементов и найденные числа отмечаешь в первом массиве. Собственно, линейный алгоритм
0
|
||
|
6 / 6 / 0
Регистрация: 27.06.2009
Сообщений: 16
|
|
| 13.10.2009, 20:25 | |
|
а условие точно правильное? если повторяются все числа кроме одного, то решение прстое:
решение
нужно поочередно ксорить все числа, результатом будет нужное число
Добавлено через 15 минут если в массиве встречаются ВСЕ числа от 1 до M, то решение похожее: решение
сначала ксорим все натуральные числа от 1 до M, потом ксорим все числа в массиве, потом ксорим два полученных результата
0
|
|
|
107 / 107 / 9
Регистрация: 02.06.2009
Сообщений: 578
|
|
| 13.10.2009, 20:49 | |
|
Если ограничение только по времени, то проблемы собсно нету. Можно например завести дополнительный массив bool, заполнить его false, затем при проходе основного массива проверить значение ячейке дополнительного массива с индексом, равным текущему элементу в основном массиве. Если там фолс - обратить в Тру. Если там Тру - ответ нашли.
0
|
|
|
6 / 6 / 0
Регистрация: 27.06.2009
Сообщений: 16
|
|
| 13.10.2009, 21:10 | |
|
небольшое дополненние ко второму решению из моего предыдущего поста
дополнение
ксор всех нат. чисел от 1 до m можно посчитать формулой
m % 2 - (m % 4) / 2 + (m + m % 4) * (1 - m % 2)
1
|
|
|
|
|||
| 13.10.2009, 23:29 | |||
|
Хотя при твоей постановке задачи решение красивое Добавлено через 1 минуту
0
|
|||
|
6 / 6 / 0
Регистрация: 27.06.2009
Сообщений: 16
|
|
| 13.10.2009, 23:39 | |
|
условие я прочитал, просто при такой постановке задачи чувствуется, что красивое решение врядли есть, а та задачка, которую я написал, стандартная, поэтому я предположил, что возможна ошибка в условии.
0
|
|
|
2924 / 1274 / 114
Регистрация: 27.05.2008
Сообщений: 3,465
|
|
| 13.10.2009, 23:55 | |
|
Да задачка-то тьфу, чиха не стоит. И единственный смысл ее, насколько я могу понять - работодатель хочет узнать, знает ли кандидат, что такое "сложность алгоритма O(N)" (т.е. то, что описал Evg в посте #59). Все. Иного смысла тратить время на эту "задачку" я не вижу.
0
|
|
|
149 / 50 / 3
Регистрация: 21.12.2008
Сообщений: 960
|
|
| 11.11.2009, 21:55 | |
|
Задачка: найти большее из 2 чисел не использую ни ветвления, ни ф-ций(любых), ни циклов и тп
![]() Она решается...
0
|
|
|
|
|||||||||||
| 12.11.2009, 17:04 | |||||||||||
|
Даны две записи (отличаются только типом переменной i):
3
|
|||||||||||
|
3189 / 869 / 39
Регистрация: 29.12.2008
Сообщений: 951
|
|
| 12.11.2009, 20:40 [ТС] | |
|
cristaloleg,
кажется, решил :)
Пусть x - первое число, y - второе. Тогда (x+y+|x-y|):2 это будет б0льшим числом из двух.
0
|
|
|
|
|
| 12.11.2009, 20:55 | |
|
Phantom, вычисление модуля - это всё-таки функция. С Пупоревым мы в своё время по этому поводу спорили (применительно к этой же самой задаче), но тогда в постановке задачи было написано лишь "без ветвлений", а использование модуля формально можно было под это подогнать
0
|
|
|
2537 / 833 / 10
Регистрация: 31.05.2009
Сообщений: 1,668
|
||||||
| 12.11.2009, 21:05 | ||||||
|
cristaloleg, а ничего, если я тут с
асмом
0
|
||||||
| 12.11.2009, 21:05 | |
|
Задачи по программированию в С++
Олимпиадные задачи по программированию Ищу задачи по программированию c++ Подскажите задачи по программированию Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
|
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
|
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ
Основная суть и тезисы по измерениям:
0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема.
Объект не может перемещаться в 0D.
1D (Первое измерение):. . .
|
[EasyBuilder Pro] Памятка по разработке для панелей Weintek
ФедосеевПавел 26.08.2026
Памятка по разработке для панелей Weintek
ВВЕДЕНИЕ
Ранее, при реализации проектов основное внимание уделял разработке управляющей программы для контроллера, а панели оператора доставалось время. . .
|
|
Модель по догадкам
anaschu 25.08.2026
Прошло две недели. Я уже рассказывал, как разговаривал с сотрудниками у сортировки и как понял, что главная ветка — не про приёмку, а про отбор. Но тогда я думал, что понял механику. На этой неделе я. . .
|
Запись в регистр сведений независимо от заполненности табличной части
Maks 25.08.2026
Реализация из решения ниже выполнена на нетиповом документе с несколькими табличными частями, разработанного в КА2.
Задача:
Обеспечить запись документа в регистр сведений независимо от. . .
|
Ноутбук Альфария
kumehtar 24.08.2026
Встретился тут в сети ноутбук Альфария, примарха Альфа-Легиона. Хотя возможно, это ноутбук Омегона, разумеется.
Ну как вам?
|
Мастера простых решений
DevAlt 23.08.2026
В сишарп стэках winforms, да и wpf существует сложная система связывания
источниках данных и элементов формы(текстовые поля и метки), опирается все
это на технологию событий и мета. . .
|