This media is not supported in your browser
VIEW IN TELEGRAM
Всех с окончанием рабочей недели)
#fridaymemes
#fridaymemes
😁30❤3
Лига цифровой экономики
Будет ли работать этот код?
#digitalleague | Подписаться
Будет ли работать этот код?
List<String> list = new ArrayList<>();
list.add("a");
list.add("b");
list.add("c");
list.add("d");
for (String elem : list) {
if (elem.equals("a")) {
list.remove(elem);
}
}
#digitalleague | Подписаться
ВКонтакте
#vk | Подписаться
Дан массив из нулей и единиц. Нужно определить, какой максимальный по длине
подынтервал единиц можно получить, удалив ровно один злемент массива.
Удалять один элемент из массива обязательно.
assert(maxOnes (new int[](1, 1, 0, 1))) =- 3
assert(maxOnes (new int[K1, 1, 0, 0, 1})) -- 2
#vk | Подписаться
Яндекс
#yandex | Подписаться
Дана строка. Требуется узнать является ли она палиндромом, если из неё удалить максимум 1 символ
#yandex | Подписаться
👍2
Яндекс
#yandex | Подписаться
Дан текст T и строка S. Требуется найти подстроку S' в T такую, что она совпадает с S с точностью до перестановки букв и вернуть начальный индекс подстроки.
Проверка:
"a" "a" => 0
"abcd", "aaa" => -1 ?
"abcd", "cbd" => 1
"abcdda", "bcdd" => 1
#yandex | Подписаться
👍6
Тинькоф
#tbank | Подписаться
/**
* API поиска авторов и их книг по имени автора (полное ФИО или часть имени в любом регистре).
* Также компонент при каждом поиске обновляет статистику по частоте использования поисковой строки (сбрасывается раз в сутки другой системой)
* При обнаружении популярного запроса (> 1000 запросов в сутки), по которому находится много авторов, отправляется алерт.
* Алерт должен отправляться не более 1 раза за сутки для каждого запроса
* Все классы на самом деле находятся в разных файлах, однако здесь представлены в одном месте для удобства
*/
@RestController
public class AuthorController {
@Autowired
private AuthorSearchService service;
@GetMapping("/authors")
public List<AuthorDto> readAllAuthors(@RequestParam String query) {
List<Author> authors = service.search(query);
return authors.stream().map(el -> {
return new Mapper().map(el);
}).collect(Collectors.toList());
}
}
@Component
public class AuthorSearchService {
@Autowired
private AuthorsRepository authorsRepository;
@Autowired
private StatisticsRepository statisticsRepository;
private AlertRestClient arc = new AlertRestClient();
// В query может быть как полностью ФИО, так и часть имени, например "Вадим Панов" или "панов"
@Transactional
public List<Author> search(String query) {
List<Author> authors = authorsRepository.findByNameContainingIgnoreCase(query);
Statistics s = statisticsRepository.findById(query).orElse(null);
if (s == null) s = new Statistics(query);
s.setNumbers(s.getNumbers() + 1);
statisticsRepository.save(s);
if (s.getNumbers() > 1000 && authors.size() > 1000) {
System.out.println("too popular search with too much data, sending an alert...");
arc.send(query, s.getNumbers(), authors.size());
}
return authors;
}
}
@Entity
@Data
public class Author {
@Id
@GeneratedValue
private Long id;
private String name;
@OneToMany(mappedBy = "author")
private List<Book> books;
public Author(String name) {
this.name = name;
}
}
@Entity
@Data
public class Statistics {
@Id
private String query;
private int numbers;
public Statistics(String query) {
this.query = query;
}
}
@Data
public class AuthorDto {
private Long id;
private String name;
private List<Book> books;
}
@Entity
@Data
public class Book {
private Long id;
private String name;
}
#tbank | Подписаться
👍10❤4
This media is not supported in your browser
VIEW IN TELEGRAM
Всех с окончанием рабочей недели)
#fridaymemes
#fridaymemes
😁21🥰3❤2👍2🤯1
😱13🔥2
Астон
Получить из листа students лист books
#aston | Прислать задачу | Подписаться
Получить из листа students лист books
public class Student {
private String name;
private List<Book> books;
}
List<Student> students;
List<Book> books =#aston | Прислать задачу | Подписаться
😁8👎2😱1
ВКонтакте
#vk | Подписаться
// Нужно написать функцию, которая принимает на вход строку,
// а на выходе возвращает для каждого уникального символа максимальное число его
// беспрерывных повторений.
// Input: aafbaaaaffc
// Output: a:4 b:1 f:2 c:1
class Solution {
public String solve(String input) {
}
}
#vk | Подписаться
👍5😱1
Лига цифровой экономики #repeat
Найти первый неповторяющийся элемент
#digitalleague | Подписаться
Найти первый неповторяющийся элемент
int[] arr = {9, 4, 9, 9, -1, 0, 6, 7, 4, 5, -1, 0};#digitalleague | Подписаться
👍5
IT ONE (#repeat)
#itone
public class Main {
//Найти первый неповторяющийся элемент в массиве целых чисел
public static void main(String[] args) {
int[] arr = {9, 4, 9, 6, 7, 4, 5};
int[] arr2 = {9, 4, 9, 6, 6, 4, 5};
System.out.println(nonRepeatable(arr)); //6
System.out.println(nonRepeatable(arr2)); // 5
}#itone
Авито (#repeat)
#avito | Подписаться
Мы в Авито любим проводить соревнования, — недавно мы устроили чемпионат по шагам. И вот настало время подводить итоги!
Необходимо определить 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
Авито
Напишите функцию генерирующую все возможные правильные скобочные последовательности из n пар скобок.
#avito | Подписаться
Напишите функцию генерирующую все возможные правильные скобочные последовательности из n пар скобок.
#avito | Подписаться