mirror of
https://github.com/VyunSergey/tinkoff-interview.git
synced 2025-12-06 03:26:55 +03:00
32 lines
1.5 KiB
Markdown
32 lines
1.5 KiB
Markdown
# tinkoff-interview
|
||
Задачи с собеседования в Tinkoff на Scala backend
|
||
|
||
* Задача 1
|
||
```scala
|
||
/**
|
||
* 1) Сжать последовательность целых чисел
|
||
* Seq(1, 2, 2, 3, 4, 3, 3, 3) => Seq((1, 1), (2, 2), (3, 1), (4, 1), (3, 3))
|
||
* Ответ выдать в виде Seq[(Int, Int)] (число из последовательности и число последовательных повторений)
|
||
* 2) восстановить исходную последовательность из сжатой
|
||
*/
|
||
```
|
||
* Задача 2
|
||
```scala
|
||
/**
|
||
* На входе получаем последовательность асинхронных вызовов
|
||
* с сигнатурой Seq[Future[String]]
|
||
* Получить Future[(Seq[String], Seq[Throwable]) - результат агрегации
|
||
* выполненных Future и исключений
|
||
*/
|
||
```
|
||
* Задача 3
|
||
```scala
|
||
/**
|
||
* Transformation Chain
|
||
* Дан набор возможных трансформаций: type Transformation[T] = T => Option[T]
|
||
* Написать функцию преобразования последовательности трансформаций в возможную трансформацию.
|
||
* Новая трансформация это результат работы всей цепочки трансформаций, которые не вернули None.
|
||
* Если все вернули None, то общий результат None.
|
||
*/
|
||
```
|