Post thumbnail

Пусть у нас есть массив положительных чисел, в котором все числа, кроме трех, встречаются по 2 раза, а эти три числа отличны от всех остальных и встречается каждое ровно по...
Читать дальше

Post thumbnail

Рассмотрим ситуацию, когда работники хотят вычислить свою среднюю зарплату при условии, что каждый знает свою зарплату, но не может сообщить ее другому напрямую. Обмен информации между людьми возможен, но передаваемые...
Читать дальше

Post thumbnail

Технокубок — это олимпиада по программированию, организованная Mail.Ru Group, МГТУ им. Н. Э. Баумана и МФТИ для учеников 8-11 классов, а также потенциальная возможность попасть в лучшие технические вузы благодаря...
Читать дальше

Одна из самых известных задач Интернета, будоражащая многие светлые умы человечества. Ее формулировка такова: самолет стоит на взлетной полосе с подвижным покрытием типа транспортера. Покрытие может двигаться против направления взлета...
Читать дальше

Post thumbnail

Рассказывает Куртис МакЭнроэ  Недавно после длительного времени, проведенного без сна, я задумался над тем, как можно узнать количество дней в месяце, зная его номер. Существуют детские стишки на эту тему,...
Читать дальше

Post thumbnail

В массиве случайных чисел A1 задан один «волшебный» индекс: такой, что A[i] = i. Значения элементов в массиве повторяться не могут. Учитывая, что массив отсортирован по значениям в порядке возрастания, напишите метод, который определит этот...
Читать дальше

Классическая задача. Найдите в данной вам строке максимальную по длине подстроку, которая является палиндромом (то есть читается слева направо и справа налево одинаково). Предложите как можно более эффективный алгоритм....
Читать дальше

Post thumbnail

Задача, которую давали на собеседованиях в Apple. Представьте, что вы получили работу кассира в магазине. Ваш босс случайно выяснил, что вы обладаете навыками программиста, и захотел, чтобы вы помогли ему написать...
Читать дальше

Решение задачи о N ферзях на Python

http://obogason.com/n_queens_problem/

Задача о восьми ферзях — известная задача, условие которой звучит так: «Расставить на стандартной 64-клеточной шахматной доске 8 ферзей так, чтобы ни один из них не находился под атакой другого». Ее можно обобщить до «Задачи о N ферзях на доске NxN». Эту задачу можно решить алгоритмически, например, на Python.

Post thumbnail

Это довольно сложная, но очень популярная задача. Давайте решим ее на примере массива: 2 3 -8 -1 2 4 -2 3 Если рассматривать массив как содержащий чередующиеся последовательности положительных и...
Читать дальше

Post thumbnail

В этом выпуске рассмотрим классическую задачу, известную под названием «Золотая гора». На CheckiO её реализовали в этой задаче. Представьте себе треугольник, составленный из чисел. Одно число расположено в вершине. Ниже размещено два...
Читать дальше


Это классическая задача, которую любят предлагать на собеседованиях, и она достаточно проста. Пусть a0 — это исходное значение a, а b0 — исходное значение b. Обозначим diff разницу а0 —...
Читать дальше

Самый распространенный вариант реализации функции max — проверка знака выражения a — b. В этом случае мы не можем использовать оператор сравнения, но можем использовать умножение....
Читать дальше