Канал для поиска исполнителей для разных задач и организации мини конкурсов
Last updated 1 month, 3 weeks ago
Логическая задача с собеседования:
Два друга, Андрей и Иван, решили приготовить пирог. Андрей внес вклад, добавив в тесто 300 грамм муки, а Иван добавил 200 грамм сахара. Когда пирог был испечен, к ним заглянул сосед и они пригласили его на чаепитие. Пирог разделили поровну на троих. После чаепития сосед оставил им 500 рублей в качестве благодарности.
Андрей предложил делить деньги так: 300 рублей ему, а 200 рублей Ивану. Однако Иван не согласился.
Как вы считаете, как они должны разделить вознаграждение, чтобы все было честно?
Что вернет return?
(Эта задача не является примером хорошего кода. Но подобные вещи часто встречаются в проектах, скоро будут еще несколько подобных вопросов)
Минимальное значение = -2^31.
В Java для типа int
выделено 4 байта памяти. Каждый байт памяти состоит из 8 битов. Каждый бит может принимать только 2 значения — 0 или 1. Переменная типа int
содержит 32 бита и может принимать 4,294,967,296
значений. (2^32)
Половину этого диапазона отдали под отрицательные числа, а вторую — под положительные и еще надо разместить «0». Вот и получилось от \-2,147,483,648
(-2^31) до 2,147,483,647 (
2^31 -1).
Objects.equals(c, element) в дебаге будет такой:
Ответ к вопросу про сравнение с массивом: В данном случае, метод isIn принимает массив, а не список, поэтому Objects.equals будет сравнивать String со списком как с объектом, что приведет к false. Основное правило, которое надо соблюдать, это не передавать в метод с vararg параметром коллекцию.
Telegram
Java Interview Tasks
Чему будет равно isVersionSupported?
Канал для поиска исполнителей для разных задач и организации мини конкурсов
Last updated 1 month, 3 weeks ago