Как потестировать stdin, stdout JavaScript/Node.js для решения задач?
Решаю тренировочные задачи для поступления на стажерскую программу в одну из компаний.
На сайте решение для автоматического тестирования нужно писать с помощью стандартных потоков ввода/вывода.
Пример данных для ввода:
5 5
1 4 9 16 25
2
Вывод:
24
Пытаюсь писать ответ согласно примеру, приложенному на сайте:
var readline = require('readline');
var rl = readline.createInterface({
input: process.stdin,
output: process.stdout
});
let total = 0;
process.stdin.on('end', () => { console.log(total); process.exit(0); });
rl.on('line', function (data) {
data = data.split(' ');
const countAndTime = parseInt(data[0]) || 0 //Я предполагаю, что каждая из переменных - массив
const floors = parseInt(data[1]) || 0
const outgoing = parseInt(data[2]) || 0
const howMuchMinutes = (countAndTime, floors, outgoing) => {
let maxTime
//тут решение самой задачи
return maxTime
}
total = howMuchMinutes(countAndTime, floors, outgoing)
});
В качестве ответа получаю вердикт системы: "Partial Solution - Частичное решение".
Причём такой ответ я получаю не только с этой задачей, но и со всеми остальными.
Если решать задачу с обычным выводом в console.log, подставляя на вводе пример данных, ответ правильный.
Я не понимаю, дело в моих решениях или же в том, что я неправильно пишу ввод/вывод? Я даже не уверена, действительно ли данные приходят в виде массивов, как я предполагаю.
Есть ли способ проверить правильность ввода/вывода? Быть может есть какие-то сервисы, которые выполняют подобное тестирование, но выводя на экран то, что выводят потоки... Или можно написать такой тест самой?
Если моя реализация stdin\stdout чтобы получить массивы в качестве данных неверная, я была бы благодарна, если бы вы написали правильную.