Также смотрите примеры других задач для самостоятельного решения. На первый взгляд эта задача кажется довольно сложной, особенно если вы не эксперт загадки для программистов в C++. Элементы списка менять нельзя, память можно использовать только константную. Этот вопрос задавали ранее на собеседованиях в Apple.
Решение за О(n (полный перебор)
Мы знаем, что это неправильная наклейка, поэтому это автомат с чаем либо кофе. После этого определяются остальные два автомата методом исключения. Например, если автомат выдал чай, то автомат с наклейкой «чай» на самом деле выдаёт кофе, а автомат с наклейкой «кофе» выдаёт случайный напиток. В общем, нам нужно взять элемент из середины массива и сравнить его индекс с его же значением — midIndex с midValue.
Как найти средний элемент в LinkedList за один проход?
За каждой дверью могут находиться либо принцесса, либо тигр. Также за обеими дверьми могут быть две принцессы или два тигра. Независимо от того, какому из стражей вы зададите этот вопрос, вы всегда получите ответ, который приведёт вас в ад. Поэтому вам стоит выбрать другие врата, чтобы отправиться в рай. Как сделать две кучи монет, в каждой из которых одинаковое количество монет смотрят орлом вверх? Вам разрешено переворачивать монеты любое количество раз.
- Например, объяснить термин, решить логическую задачку и написать код здесь и сейчас.
- Все вагоны внутри выглядят строго одинаково, окна закрыты так, что невозможно посмотреть наружу, движение поезда равномерное.
- Более скользкая твердая пластиковая поверхность способствует реализации варианта скольжения.
- В конце концов, не может существовать строки с 280 уникальными символами, если символов всего 256.
- Если у вас не получится сразу решить эту задачу в уме, попробуйте письменно.
Решение за О(n log n) (сортировка + структуры данных)
Вполне вероятно, вам нужно было принять такое решение во время вашей последней дальней поездки. Если шутки о мужчинах-водителях правильны, мужчины очень неохотно возвращаются назад или спрашивают других о том, куда надо ехать. Предположим, дружески настроенный незнакомец уверяет Эшли и Бена, что точка В находится дальше, «прямо вон по той дороге», и заявляет, что «вы не сможете ее пропустить». Они едут полчаса, готовые за каждым поворотом увидеть В.
Задача на понимание внутренних процессов сетей
Фактически минимум может поменяться только при добавлении нового элемента. В данной реализации мы подразумеваем, что используется набор символов ASCII, но алфавит может быть разным. Если строки являются анаграммами, то они состоят из одинаковых символов, расположенных в разном порядке. Сортировка двух строк должна упорядочить символы.
Оптимизация: сократите количество переходов между компьютерами
При вызове unique_pairs(int) код в теле функции не вычисляется. Вместо этого будет возвращён объект генератора. После чего выполнение будет приостановлено, а метод вернёт указанный объект (здесь yield действует подобно return). При следующем вызове функция начнёт выполняться не с начала, а с того места, на котором остановилась в прошлый раз.
Первый вариант решения (неверный)
С тех пор этот парадокс стал темой огромного числа обсуждений. После упоминания о нем в 1990 году Мэрилин вос Савант в своей колонке, которую она ведет в журнале Parade, он стал популярным и у широкой общественности. Ее анализировали математики из Массачусетского технологического института, и программисты из Los Alamos National Laboratory…».
Когда поверхность не является ровной, сила тяжести толкает жидкость в сторону более низкого края. Это, в свою очередь, перемещает пузырек туда, где жидкости нет, — к противоположному краю. Если бы мы работали с массивом, то было бы много сложностей, связанных со смещением элементов.
Эта логическая задача особенно полюбилась на собеседованиях. Первая комната закрыта дверью, в ней низкие потолки и висят 3 лампы накаливания. Во второй комнате есть 3 выключателя, подсоединённых к каждой из ламп. Можно как угодно переключать выключатели, но перейти из второй комнаты в первую можно лишь один раз.
«Фактически это главный мессенджер нынешней войны. Вероятно, с сегодняшнего дня вопрос создания военного мессенджера для нашей армии становится жизненно важным. Здесь вы можете поучаствовать в соревнованиях. В свой профиль можете поместить резюме, и вся информация будет доступна таким работодателям, как Facebook, Quora, Yahoo и многим другим.
В описании сайта сказано, что это «арена, где сумасшедшие программисты сражаются ради славы и клёвых призов». Участие в соревнованиях, проводимых каждые пол года — замечательный способ проявить себя в сообществе программистов. C Puzzles предоставляет вам головоломки по программированию, характерные для языка Си (со всеми его причудами). Python Challenge — сайт, где загадки требуют написания небольших программ на Python. При этом сложность увеличивается в геометрической прогрессии с каждой новой загадкой. Решение задач — хороший способ развить навыки разработки.
Цифры в коде Грея не представляют степени 2 или чего-то другого реального. Код 111 означает 5, и вам не следует пытаться извлечь из него что-то еще. Единственная причина существования кода Грея в том, что каждый номер может быть сгенерирован из предыдущего путем изменения всего одной цифры. Чтобы перейти от 5 (111) к 6, вам всего лишь нужно изменить среднюю цифру (и получится 101). Это простой случай, а вас просят универсальный вариант, подходящий для любого возможного числа людей N. Для решения этой задачи Пете необходимо возвести в куб число, и произвести деление.
Если мы посмотрим на первые элементы строки и столбца, то можем начать искать расположение искомого элемента. Очевидно, что 55 не может находиться в столбце, который начинается со значения больше 55, так как в начале столбца всегда находится минимальный элемент. Также мы знаем, что 55 не может находиться правее, так как значение первого элемента каждого столбца увеличивается слева направо. Поэтому, если мы обнаружили, что первый элемент столбца больше х, нужно двигаться влево. Этот вопрос довольно часто на собеседовании слышат те, кто сумели быстро найти 1 дублирующийся элемент в массиве.
Мы создаем массив выборок (по одной на каждую длину слова), но пока не будем их использовать. Можно создать выборку, позволяющую упростить поиск, если будем анализировать подстроки как префиксы слов в словаре. При построчном формировании прямоугольника можно ввести проверку, являются ли столбцы допустимыми префиксами.
Для получения действительно случайного исхода пусть каждый из семи игроков бросает кость с пятью сторонами один раз. Игрок, показавший более крупное число, выигрывает. Если высшее значение показали несколько игроков, они бросают кость снова (столько раз, сколько необходимо). Единственный минус в таком подходе — возможно, придется много раз подбрасывать кость.
Как и многие другие умные идеи, на практике она не работала. Скорее происходящее напоминало стрельбу из водяного пистолета по нашкодившему коту. Катя знает N, поскольку оно было написано на карточке, которую вы попросили её передать Пете. Она знает Y, поскольку это число было указано в ответе Пети, отправленном вам. Но она не знает d, и у нее нет возможности его выяснить.
IT курсы онлайн от лучших специалистов в своей отросли https://deveducation.com/ here.