Обложка: Как сгенерировать неповторяющиеся комбинации, меняя только один элемент за раз

Как сгенерировать неповторяющиеся комбинации, меняя только один элемент за раз

Полное условие задачи звучит так: «У вас есть пустое помещение и группа людей снаружи. За один ход вы можете либо позволить одному человеку войти в помещение, либо выпустить из него…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji
Обложка: Перед вами три коробки, в какой из них находится приз?

Перед вами три коробки, в какой из них находится приз?

Перед вами три коробки, в одной из которых находится ценный приз, в двух других ничего нет. Вы можете выбрать любую коробку, но вам по-прежнему неизвестно, в какой именно приз. Одну…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji

Умный указатель на C++

Умный (интеллектуальный) указатель — это тот же обычный указатель, обеспечивающий безопасность благодаря автоматическому управлению памятью. Такой указатель помогает избежать множества проблем: «висячие» указатели, «утечки» памяти и отказы в выделении памяти…

2
reaction
0
reaction
0
reaction
0
reaction
0
reaction
2
2
emoji
Обложка: Умный указатель на C++

Объясните разницу между шаблонами в C++ и дженериками в Java

Многие программисты полагают, что шаблоны C++ и дженерики (например в Java) — это одно и то же, ведь их синтаксис похож: в обоих случаях можно написать что-то вроде List<T>. Чтобы…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
3
3
emoji
Обложка: Объясните разницу между шаблонами в C++ и дженериками в Java

ППП, ППК, ПКК, ПП и другие

Популярная задача с собеседований Amazon. Мы русифицировали её, но смысл остался тот же. Вам нужно продолжить последовательность.

3
reaction
0
reaction
0
reaction
0
reaction
0
reaction
2
2
emoji
Обложка: ППП, ППК, ПКК, ПП и другие

Задача на копирование списка

Есть однонаправленный список из структур. В нём random указывает на какой-то еще элемент этого же списка. Требуется написать функцию, которая копирует этот список с сохранением структуры (т.е. если в старом…

3
reaction
0
reaction
0
reaction
0
reaction
0
reaction
3
3
emoji
Обложка: Задача на копирование списка

Как использовать погнутую монету

Вы играете в футбол на пустынном острове и хотите подбросить монетку, чтобы решить, какой команде достанется мяч. Единственная монета, что у вас есть, является гнутой, и поэтому вносит явные искажения…

3
3
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji
Обложка: Как использовать погнутую монету

Что не так в этом отрывке кода на С++?

Есть следующий код, но в нём имеется некоторая проблема. operator int() const { return *this; }

1
1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji
Обложка: Что не так в этом отрывке кода на С++?
Обложка: Cколько мячей для гольфа войдет в школьный автобус?

Cколько мячей для гольфа войдет в школьный автобус?

Очевидно, что это задача Ферми, где от вас требуется приблизительная прикидка, правдоподобная по порядку величины. Приведём пример таких рассуждений.

2
4
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji
Обложка: Pure virtual function call

Pure virtual function call

Вопрос по С++. Что за ошибка «pure virtual function call»? В какой ситуации она может быть сгенерирована? Предоставьте минимальный код, приводящий к ней. Те, кто столкнулись с этой ошибкой в…

1
2
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji

Классическая задачка с собеседований Google: продолжите последовательность

Классическая задача с собеседований Google, в которой вам нужно продолжить последовательность чисел. Подробно разбираем все варианты решений в нашей статье.

9
12
reaction
0
reaction
0
reaction
0
reaction
0
reaction
13
13
emoji
Обложка: Классическая задачка с собеседований Google: продолжите последовательность

Логическая задача про самолёт

Разбираем логическую задачу про самолёт из книги «Действительно ли Вы достаточно умны, чтобы работать в Google?» Проверьте себя и посмотрите решение!

17
6
reaction
0
reaction
0
reaction
0
reaction
0
reaction
5
5
emoji
Обложка: Логическая задача про самолёт

Как вычислить 2 в 64 степени, не пользуясь калькулятором?

Разбираем несколько вариантов вычисления 2 в 64 степени без калькулятора. Как посчитать примерно и быстро или найти точное число, с ходом решения и ответом.

2
10
reaction
0
reaction
0
reaction
0
reaction
0
reaction
5
5
emoji
Обложка: Как вычислить 2 в 64 степени, не пользуясь калькулятором?
Обложка: В чём разница между string и String в C#?

В чём разница между string и String в C#?

Ответ на самом деле очень прост: string — это просто псевдоним (alias) для System.String т.е. технически, никакой разницы нет. Так же, как и нет разницы между int и System.Int32. Что…

1
3
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji

У вас есть аналоговые часы с секундной стрелкой. Сколько раз в день все три стрелки часов накладываются друг на друга?

Сколько раз в день все три стрелки аналоговых часов накладываются друг на друга? Решение задачи и ответ, который хотят услышать на собеседовании в Google.

2
4
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji
Обложка: У вас есть аналоговые часы с секундной стрелкой. Сколько раз в день все три стрелки часов накладываются друг на друга?

В вашем распоряжении 10 тысяч серверов в дата-центре с возможностью удалённого управления и один день, чтобы получить миллион долларов. Что вы для этого сделаете?

Ответ можно давать в двух направлениях.

1
2
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji
Обложка: В вашем распоряжении 10 тысяч серверов в дата-центре с возможностью удалённого управления и один день, чтобы получить миллион долларов. Что вы для этого сделаете?

Задача про блендер

«Вас уменьшили до размеров 5-центовой монеты и бросили в блендер. Ваш вес уменьшился так, что плотность вашего тела осталась прежней. Лезвия начнут вращаться через 60 секунд. Ваши действия?»

2
2
reaction
0
reaction
0
reaction
0
reaction
0
reaction
2
2
emoji
Обложка: Задача про блендер

Задачка на основы криптографии с подробным разбором

Как удостовериться, что у друга есть ваш номер телефона так, чтобы никто об этом не узнал, причём нельзя спросить его напрямую? Поясним условия подробнее. Например, вы хотите удостовериться, что у…

2
reaction
0
reaction
0
reaction
0
reaction
0
reaction
2
2
emoji
Обложка: Задачка на основы криптографии с подробным разбором

Задача про шарик с гелием в машине

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

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji
Обложка: Задача про шарик с гелием в машине

Реализуйте метод сжатия строки на основе счетчика повторяющихся символов

Например, строка aabcccccaaa должна превратиться в а2b1с5аЗ. Если «сжатая» строка оказывается длиннее исходной, метод должен вернуть исходную строку.

4
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji
Обложка: Подсчёт количества путей робота на сетке

Подсчёт количества путей робота на сетке

Представьте себе робота, находящегося в левом верхнем углу сетки с координатами (X, Y). Робот может перемещаться в двух направлениях: вправо и вниз. Сколько существует маршрутов, проходящих от точки (0, 0)…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji

Напишите метод, генерирующий случайную последовательность m целых чисел из массива размером n. Все элементы выбираются с одинаковой вероятностью

Первое, что приходит в голову, — выбрать случайные элементы из массива и поместить их в новый массив. Но что если мы выберем один и тот же элемент дважды? В идеале,…

2
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji

Напишите код, разбивающий связный список вокруг некоторого значения так, чтобы все меньшие узлы оказались перед узлами, большими или равными этому значению

Если бы мы работали с массивом, то было бы много сложностей, связанных со смещением элементов. Со связным списком задача намного проще. Вместо того чтобы смещать и менять местами элементы, мы…

2
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji
Обложка: Смоделируйте использование игральной кости с семью гранями, если в вашем распоряжении имеется только кость с пятью гранями

Смоделируйте использование игральной кости с семью гранями, если в вашем распоряжении имеется только кость с пятью гранями

Как вы можете получить случайное число в диапазоне от 1 до 7, используя игральную кость с пятью гранями? Иначе говоря, в вашем распоряжении устройство, которое генерирует случайное целое число от 1…

1
1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji

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

Вам дан большой текстовый файл, в котором содержатся слова. Необходимо написать код, который позволит найти минимальное расстояние между любыми двумя словами. Достаточно ли будет O(n) времени? Сколько памяти понадобится для…

2
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji
Обложка: У вас есть неограниченное количество монет достоинством 25, 10, 5 и 1 цент. Напишите код, определяющий количество способов представления n центов

У вас есть неограниченное количество монет достоинством 25, 10, 5 и 1 цент. Напишите код, определяющий количество способов представления n центов

Это рекурсивная задача, поэтому давайте разберемся, как рассчитать makeChange(n), основываясь на предыдущих решениях (подзадачах). Пусть n = 100. Мы хотим вычислить количество способов представления 100 центов. Нам известно, что для…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji

Опишите, как можно использовать один одномерный массив для реализации трех стеков

Подобно многим задачам, все зависит от того, как мы собираемся поддерживать эти стеки. Если нам нужно выделить определенное пространство для каждого стека, можно так и поступить. Но в этом случае…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji
Обложка: Как рассадить необщительных посетителей в баре так, чтобы клиентов было как можно больше?

Как рассадить необщительных посетителей в баре так, чтобы клиентов было как можно больше?

В этот бар ходят необщительные посетители. Вдоль барной стойки расположены 25 мест. Всякий раз, когда входит новый посетитель, он обязательно садится на самое дальнее, насколько это возможно, место от остальных…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji

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

Эту задачу также можно решить двумя способами: простым и сложным. Давайте рассмотрим оба решения. «Простое» решение: O(N4) Мы знаем, что длина стороны самого большого квадрата равна N и существует только…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji
Обложка: В каком случае добираясь до машины, вы меньше промокнете: быстро пробежав или пройдя путь спокойно?

В каком случае добираясь до машины, вы меньше промокнете: быстро пробежав или пройдя путь спокойно?

Идет дождь, а вам надо добраться до вашей машины, которая стоит в самом дальнем конце парковки. Побежите ли вы к ней или нет, если ваша цель — как можно меньше…

2
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji

Сгенерированные случайным образом числа передаются методу. Напишите программу расчета медианы, динамически отслеживающую новые поступающие значения

Одно из возможных решений — использовать две кучи разных приоритетов: максимальная куча (maxHeap) для значений выше среднего и минимальная куча (minHeap) для значений ниже среднего. Это позволит разделить элементы примерно…

1
reaction
0
reaction
0
reaction
0
reaction
0
reaction
0
Оценить
emoji

Найдите самую большую сумму непрерывной последовательности из массива целых чисел, как положительных, так и отрицательных

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

2
reaction
0
reaction
0
reaction
0
reaction
0
reaction
1
1
emoji