Loading...

Във форума е въведено ограничение, което позволява на потребителите единствено да разглеждат публикуваните въпроси.

EvgeniJD avatar EvgeniJD 35 Точки

09. Triples of Latin Letters

Здравейте!

Ще се радвам, ако някой може да ми помогне по следния въпрос. Защо judge ми приема едното решение с 100/100, а при другото - лимит памет? 

Решенията ми - коментирано и некоментирано: https://pastebin.com/Z711B0YT

Ето и условието на задачата:

Triples of Latin Letters

Write a program to receive a number n and print all triples of the first n small Latin letters, ordered alphabetically:

Examples

Input

Output

3

aaa

aab

aac

aba

abb

abc

aca

acb

acc

baa

bab

bac

bba

bbb

bbc

bca

bcb

bcc

caa

cab

cac

cba

cbb

cbc

cca

ccb

ccc

 

Тагове:
0
JavaScript Fundamentals
willystyle avatar willystyle 2472 Точки
Best Answer

Защото явно подават n, като стринг, ти си мислиш, че подават:
trippleLetters(3);

но всъщност подават
trippleLetters(
"3"); (може да го провериш ако в решението печаташ console.log(typeof arguments[0]);

В първото решение това не го усещаш понеже JS прави auto coercion и j < n e все едно j < Number(n)

но във второто решение, ти конкатенираш 97 + n  (няма да е 100 а ще е 973) и циклите стават прекалено големи и затова гърми за памет.

Просто във второто решение кастни n към Number на трите места където го ползваш (със +, Number или parseInt както си свикнал)

0
EvgeniJD avatar EvgeniJD 35 Точки

Благодаря ти за съвета. Програмата работи както ти каза - кастнах аргумента към число. Интересното обаче е, че той си беше число. Аз го подавам, пиша го без copy - paste, и въпреки това написах и console.log(typeof arguments[0]);, което ми върна number, още на първия ред, преди да го кастна, разбира се. 

1
willystyle avatar willystyle 2472 Точки

ама къде гледаш какво ти е върнало, в judge в грешните нулеви тестове нали?

0
EvgeniJD avatar EvgeniJD 35 Точки

Оооооо!!!! Разбрах те напълно вече!  Самия judge подава аргумента като string, защото когато си paste-на решението там и напиша на първия ред console.log(typeof arguments[0]); ми излиза string.

1
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.