Сумма результатов заданий по очереди
Задача по программированию с проверкой онлайн
- Сложность
- Лёгкая
- Языки
- Python
- JavaScript
- TypeScript
- Темы
- Асинхронность и потоки
- Массивы и списки
Дан список заданий jobs. Задание — асинхронная функция без аргументов: вызовите её (await job()), чтобы выполнить; она может завершиться ошибкой (исключением).
Выполняйте задания по одному, в порядке списка: следующее начинайте, когда предыдущее закончилось. Верните сумму значений заданий, которые завершились успешно. Задание, завершившееся ошибкой, пропустите (оно прибавляет 0) и переходите к следующему. Для пустого списка верните [0, 0]. Заданий до 50, значения целые.
Ответ — список из двух чисел: этот результат и время в миллисекундах от вызова функции до момента, когда она закончила. Текущее время в миллисекундах: Date.now() в JS/TS, round(asyncio.get_running_loop().time() * 1000) в Python.
Пример: задания длятся 10, 5 и 10 мс, первое возвращает 10, второе завершается ошибкой, третье возвращает 6 → [16, 25].
Источник: задача CodeShare