Реальные задачи с собеседований | Java
3.53K subscribers
278 photos
36 videos
474 links
Буду сюда выкладывать реальные задачи и вопросы с собеседований, без копипаста с интернета и других каналов)

Ссылка для друга - https://t.me/+K4vJFdalwlthYTQy

Прислать задачи, реклама - @privatevoidmain
Download Telegram
Авито (#repeat)

Мы в Авито любим проводить соревнования, — недавно мы устроили чемпионат по шагам. И вот настало время подводить итоги!

Необходимо определить userIds участников, которые прошли наибольшее количество шагов steps за все дни, не пропустив ни одного дня соревнований.

Пример
# Пример 1
# ввод
statistics = [
[{ userId: 1, steps: 1000 }, { userId: 2, steps: 1500 }],
[{ userId: 2, steps: 1000 }]
]

# вывод
champions = { userIds: [2], steps: 2500 }

# Пример 2
statistics = [
[{ userId: 1, steps: 2000 }, { userId: 2, steps: 1500 }],
[{ userId: 2, steps: 4000 }, { userId: 1, steps: 3500 }]
]

# вывод
champions = { userIds: [1, 2], steps: 5500 }

#avito | Подписаться
👍2
Открытые решения (вроде #repeat)

Что будет выведено на экран?

public class Predicate {
public static void main(String... args) {
int i = 5;
i = i++ + ++i;
System.out.println(i);
}
}

#opensolution | Подписаться
👍3🥰1
ВТБ

Написать метод, определяющий является ли переданная строка палиндромом #repeat
 
public boolean isPalindrome(String s) {
//TODO
return true;
}

#vtb | Прислать задачу | Подписаться
😁9
Иннотех

Объяснить работу метода someOp2()

Что-то похожее уже было #repeat

#innotech| Прислать задачу | Подписаться
Райффанзенбанк

/*
Дана строка (возможно, пустая), состоящая из букв A-Z:

AAAABBBCCXYZDDDDEEEFFFAAAAAABBBBBBBBBBBBBBBBBBBBBBBBBBBB

Нужно написать функцию RLE, которая на выходе даст строку вида:

A4B3C2XYZD4E3F3A6B28

И сгенерирует ошибку, если на вход пришла невалидная строка.

Пояснения:

Если символ встречается 1 раз, он остается без изменений;

Если символ повторяется более 1 раза, к нему добавляется количество повторений.
*/

#repeat
#raif | Прислать задачу | Подписаться
👍4
Авито (#repeat)

На Авито размещено множество товаров, каждый из которых представлен числом.
У каждого покупателя есть потребность в товаре, также выраженная числом.
Если точного товара нет, покупатель выбирает ближайший по значению товар, что вызывает неудовлетворённость, равную разнице между его потребностью и купленным товаром.
Количество каждого товара не ограничено, и один товар могут купить несколько покупателей.
Рассчитайте суммарную неудовлетворённость всех покупателей.

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

Пример
# Пример
# ввод
goods = [8, 3, 5]
buyerNeeds = [5, 6]
# вывод
res = 1 # первый покупатель покупает товар 5 и его неудовлетворённость = 0, второй также покупает товар 5 и его неудовлетворённость = 6-5 = 1

#avito | Подписаться
👍1
Авито (#repeat)

снова прислали эту задачу). — https://t.me/java_interviews/533

#avito | Подписаться
2👍2
СБЕР #repeat

Написать метод, удаляющий дубликаты символов

public static void main(String[] args) {
String input = "Прривветт Ммир!";
String output = removeDuplicateCharacters(input);
System.out.println(output); // Вывод: Привет Мир!
}

#sber | Прислать задачу | Подписаться
2👍2
Яндекс (#repeat)

/**
* Банкомат.
* Инициализируется набором купюр и умеет выдавать купюры для заданной суммы, либо отвечать отказом.
* При выдаче купюры списываются с баланса банкомата.
* Допустимые номиналы: 50₽, 100₽, 500₽, 1000₽, 5000₽.
* <p>
* Другие валюты и номиналы должны легко добавляться разработчиками в будущем.
* Многопоточные сценарии могут быть добавлены позже (например резервирование).
*/
class ATM {
}

#yandex | Прислать задачу | Подписаться
5
Сбер (#repeat)

И у нас снова стековерфлоу и стек.

1.Написать метод приводящий к stackoverflowerror
2. Написать свой класс стека с методом возвращающим максимальный элемент в стеке

#sber| Прислать задачу | Подписаться
3
Сбер (#repeat)

Написать метод удаляющий дубликаты букв

  public static String deduplicate(String s) {
       ....
        return "Здравствуй, Сбер!";
    }

public static void main(String[] args) {
        String input = "ЗЗддррааввссттввууй, Сссббееерр!!";
        String expected = "Здравствуй, Сбер!";
String deduplicated = deduplicate(input);
        System.out.println(deduplicated);
        System.out.println(expected.equals(deduplicated));
}


#sber| Прислать задачу | Подписаться
2😁3
Иннотех

Найти самое часто повторяющееся число в массиве.

Например, [16, 9, 2, 2, 5, 2, 1]. Ответ - 2

Почему они так любят повторы в массиве? 🤣 #repeat

#innotech / Прислать задачу | Подписаться
21
Ростелеком #repeat

Написать метод, который удалит повторяющиеся символы из строки
СсскКкаАжжжиИИ----ккккаАА,,,,, дДдДдяядя,,,, ведьЬЬЬь неееЕееДдддааАаааАромМ МммоОосССква,, спаленнНаяяяЯ пожаром, ФфраАААнцуззззззууууу отдДдаААннна????

#rostelecom | Подписаться
😁12👍2
Сбер #sql #repeat?

-- Две таблицы
-- Company: id, title, sector
-- Vacancy: id, id_company, name, salary

-- Написать запрос, который выведет список компаний из отрасли IT,
-- со средним доходом по вакансиям, названия которых содержат слово Java, более $1000

#sber| Прислать задачу | Подписаться
1👍1
СБЕР #repeat

"Дана строка состоящая из скобок [ ] ( ) { } , определить правильно ли расставлены скобки. Правильность расстановки определяется, если каждая открывающаяся скобка закрывается скобкой такого же типа и в правильном порядке. Например:"([]){}"-true, "(()]"-false"


#sber| Прислать задачу | Подписаться
👍3😱11
Мойсклад #repeat

Написать программу которая приведет к StackOverFlow с минимальным количеством строк.

Подписаться
😁5
IT ONE (классика #repeat)

class Program
{
public static void main(String args[])
{
// todo: вернуть первый неповторящийся элемент и вывести ответ
int[] arr = {9, 4, 9, 6, 7, 4, 5};
System.out.println(firstUnique(arr));

}
}

#itone
Прислать задачу | Подписаться
😁91🤔1