https://coderun.yandex.ru/problem/dec-with-error-protection/description Легкая

Решение

import java.io.BufferedReader
import java.io.BufferedWriter
import java.io.InputStreamReader
import java.io.OutputStreamWriter
import java.util.ArrayDeque

fun main() {
    val reader = BufferedReader(InputStreamReader(System.`in`))
    val writer = BufferedWriter(OutputStreamWriter(System.out))
    val deque = ArrayDeque<Int>() // Дек для хранения элементов

    while (true) {
        val command = reader.readLine().split(" ") // Считываем команду
        when (command[0]) {
            "push_front" -> {
                // Добавляем элемент в начало дека
                deque.addFirst(command[1].toInt())
                writer.write("ok\\n")
            }
            "push_back" -> {
                // Добавляем элемент в конец дека
                deque.addLast(command[1].toInt())
                writer.write("ok\\n")
            }
            "pop_front" -> {
                // Извлекаем первый элемент или выводим ошибку, если дек пуст
                writer.write(if (deque.isEmpty()) "error\\n" else "${deque.removeFirst()}\\n")
            }
            "pop_back" -> {
                // Извлекаем последний элемент или выводим ошибку, если дек пуст
                writer.write(if (deque.isEmpty()) "error\\n" else "${deque.removeLast()}\\n")
            }
            "front" -> {
                // Выводим первый элемент без удаления или ошибку, если дек пуст
                writer.write(if (deque.isEmpty()) "error\\n" else "${deque.first()}\\n")
            }
            "back" -> {
                // Выводим последний элемент без удаления или ошибку, если дек пуст
                writer.write(if (deque.isEmpty()) "error\\n" else "${deque.last()}\\n")
            }
            "size" -> {
                // Выводим количество элементов в деке
                writer.write("${deque.size}\\n")
            }
            "clear" -> {
                // Очищаем дек
                deque.clear()
                writer.write("ok\\n")
            }
            "exit" -> {
                // Завершаем выполнение программы
                writer.write("bye\\n")
                break
            }
        }
    }
    
    reader.close()
    writer.close()
}