Общая сумма выплат для каждого сотрудника
Соедините сотрудников с выплатами, сгруппируйте по идентификатору сотрудника и имени, затем примените HAVING SUM(amount) > 15. Группировка только по имени склеила бы однофамильцев.
Читать ответПодготовка к интервью
3221 вопрос в категории «Лайвкодинг»
Что проверяют на интервью
В этой подборке вопросы сгруппированы по формату «Лайвкодинг», чтобы подготовку можно было вести от базовых тем к практическим задачам. В подборке чаще встречаются темы: frontend, browser, database.
Каталог
Соедините сотрудников с выплатами, сгруппируйте по идентификатору сотрудника и имени, затем примените HAVING SUM(amount) > 15. Группировка только по имени склеила бы однофамильцев.
Читать ответEquals и hashCode должны учитывать одинаковый набор полей Exam. Тогда examTwo заменит значение для ключа, равного examOne, и итоговый HashMap будет содержать три записи, включая null.
Читать ответИспользуйте flood fill: обходите соседние пиксели исходного цвета от выбранной точки и перекрашивайте их. Нужно заранее определить связность — обычно по четырём сторонам.
Читать ответСначала найдите допустимый набор купюр с учётом запасов, затем атомарно уменьшите остатки. Жадный выбор крупнейших купюр не гарантирует решения для произвольных номиналов.
Читать ответИмпортируйте конфигурацию, объявляющую A, и получите его параметром @Bean-метода b(A a). Spring сам разрешит зависимость из контейнера.
Читать ответОтберите мужчин старше 18 лет и проверьте через EXISTS наличие заказа товара производителя X. EXISTS не размножает пользователя при нескольких подходящих заказах.
Читать ответПри удалении узла соедините его prev и next, отдельно обновив head/tail на границах. При вставке между соседями нужно установить четыре связи и при необходимости новые границы списка.
Читать ответИнициализируйте максимум первым элементом и сравните с ним остальные. Пустой varargs не имеет максимума, поэтому для него нужен явный отказ.
Читать ответПройдите символы и прибавляйте разность c − '0'. Для контракта с ASCII-цифрами это даёт числовое значение каждого символа без разбора всей строки в число.
Читать ответИспользуйте NOT EXISTS с одинаковой нормализацией регистра по обеим сторонам. Для уникальности без учёта регистра возвращайте DISTINCT LOWER(name).
Читать ответПройдите строку сериями: запишите символ и длину серии, если она больше одного. Одиночные символы оставьте без счётчика, сохраняя регистр.
Читать ответДобавьте копирующий конструктор Bird(Bird other), затем создайте birdClone = new Bird(bird1). Это понятнее, чем внедрять Cloneable ради двух простых полей.
Читать ответ