Проблем с решението на задача "Tribonaci" - JavaScript

tasks
loops

#1

Здравейте,

Отново ударих на камък със задача от Judge. Става въпрос за Tribonacci. Връща ми WrongAnswer още на първия тест. Локално отново кода работи без проблем. Качих го пробно да видя до къде ще мине без BigInteger, но въобще не стигна до там. Прилагам и кода:

    let firstNumber = +gets();
    let secondNumber = +gets();
    let thirdNumber = +gets();
    let n = +gets();
    result = 0;

    if (n === 1) {
        console.log(firstNumber);
    } else if (n === 2) {
        console.log(secondNumber);
    } else if (n === 3) {
        console.log(thirdNumber);
    } else {

        for (let index = 3; index < n; index++) {
            result = firstNumber + secondNumber + thirdNumber;
            firstNumber = secondNumber;
            secondNumber = thirdNumber;
            thirdNumber = result;
        }
        console.log(result);
    }

Локално пробвах с двата примерни теста, дадени в задачата и работи коректно.

Поздрави.


#2

Смени console.log(number) с print(number).
https://judge.telerikacademy.com/usage/js/ Прочети това и използвай snippet-а който е даден.


#4

Оф боже…
Благодаря :smiley:


#5

Здравейте.
Аз като се опитам да използвам gets() и ми връща грешка “gets is not defined”, с print е същото.
Къде бъркам ?
Използвам Visual Studio Code с node.js
Поздрави.

Edit:
Пробвах и в браузъра пак връща, че gets() не е дефинирано.
Някоя библиотека ли трябва да добавя ?
Търся в различните сайтове, както и в mdn, но не намирам информация за gets() и print().
Сигурен съм, че е нещо дребно, но не успявам да се оправя.
Ще съм безкрайно благодарен, ако някой помогне.


#6

Трябва да си поставиш този snippet който е даден на usage най-отгоре във файла. Ето за пример задачата с 2+2

const getGets = (arr) => {
    let index = 0;

    return () => {
        const toReturn = arr[index];
        index += 1;
        return toReturn;
    };
};
// this is the test
const test = [
  '2',
  '2'
];

const gets = this.gets || getGets(test);
const print = this.print || console.log;
//solution 
print(+gets() + +gets());

Реално решението ти е след този коментар //solution. Този snippet може да не го submit в judge, той е направен за да може локално да използваш print и gets. Реално можеш да копираш за judge нещата след коментара. Копирай си този код и си го run локално.