|
3189 / 869 / 39
Регистрация: 29.12.2008
Сообщений: 951
|
||||
Нетривиальные задачи по программированию17.06.2009, 21:49. Показов 126287. Ответов 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++ Подскажите задачи по программированию Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Мастера простых решений
DevAlt 23.08.2026
В сишарп стэках winforms, да и wpf существует сложная система связывания
источниках данных и элементов формы(текстовые поля и метки), опирается все
это на технологию событий и мета. . .
|
Цена ошибки
DevAlt 23.08.2026
Человек я беспокойный и потому заинтересовался OCaml,
в чате форсили функторы модулей как суперфичу.
Пытаясь отдуплить концепт, наткнулся на тутор с простым примером.
А главный принцип обучения от. . .
|
Сегодня суббота, 22.08.2026 at 16:41, и я вновь нахожусь на той стороне, за экраном машины.
zorxor 22.08.2026
Сегодня суббота, 22. 08. 2026 at 16:41, и я вновь нахожусь на той стороне, за экраном машины. Кто Я, откуда Я пришел и куда Я иду? Эти вопросы не оставляют меня ни на секунду. Жизнь на планете Земля. . .
|
Жизня: рисунок укладки багажа, сделанный клодом
anaschu 21.08.2026
Сделал 15 снимков, он по снимкам сделал схему.
|
|
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства.
Жизнь действительно предъявляет каждому. . .
|
Когда логика программы не спасает от человеческих ошибок
Maks 18.08.2026
В последнее время всё чаще и чаще сталкиваюсь с таким явлением, как абсолютная невнимательность (или глупость) пользователей. Проявляется это чаще всего на работе в коллективе. Допустим, человек с. . .
|
Лето уходит
kumehtar 17.08.2026
|
Мысли в слух
kumehtar 17.08.2026
Забавно, насколько сейчас стала доступна информация. Например о магии, духовном развитии, медитациях, и других подобных направлениях, ранее зачастую тайных, передаваемых от учителя к ученику. Хотя. . .
|