- Описание
- Отправленные решения
500. Циферионские расчёты
На планете Циферион, где каждое действие и решение основываются на точных расчётах чисел, жителям необходимо правильно подсчитывать целые числа, игнорируя любые другие символы. Эти расчёты — важный навык для их повседневной жизни, будь то распределение ресурсов или строительство архитектурных чудес.
Тот, кто сможет решить эту задачу, станет почётным гостем планеты и получит звание Великого Калькулятора. Многие пытались, но лишь единицам удавалось добиться этой чести.
Условие
Ваша задача — определить тип Solution
, который принимает массив с элементами типов string
и number
, вычисляет сумму всех чисел, отбросив ненужные символы, и возвращает итоговую сумму в виде числа. Помните, что на этой планете ценят точность и аккуратность, поэтому подход к решению должен быть безупречным.
Примеры
const arrayOfNumbers = [
1,
"2abc0",
"3",
] as const;
Solution<typeof arrayOfNumbers>; // 6
Solution<[1, 2, 3, 4, 5, 6]>; // 21
Solution<[1]>; // 1
Solution<["1", "2", "3"]>; // 6
Solution<["1abc", 2, "3"]>; // 6
Solution<[111, 222, 333]>; // 666
Solution<[1, 1, 1, 1, 1, 1, 1, 1, 1, 1 ...]>;
Формат ввода
Ваше решение должно содержать определение типа Solution
.
type Solution<T extends Readonly<Array<string | number>>> = ...
Примечание
Код будет выполняться на TypeScript 4.8.4.
Ограничения
Ограничение времени
10 с
Ограничение памяти
640 МБ