Loading...
DimitarKarev avatar DimitarKarev 87 Точки

07. Max Sequence of Increasing Elements

Здравейте колеги. Имам проблем със 7-ма задача от Arrays and Lists - Exercises. Мъчих я цяла вечер и не мога да хвана теа 100 точки. Докарах я до 71(последните два теста не минават). Ето кода ми ->http://pastebin.com/QkhF9HeM . Някой може ли да ми каже къде точно бъркам?

Тагове:
0
Programming Fundamentals
puffed avatar puffed 289 Точки
Best Answer

Здравей,

Без да съм тествала виждам, че накрая изхoдният масив не е правилен, получил се е масив от индексите в първия: 

 output[i] = startMax + i;

Тук трябва да е:

output[i] = input[startMax + i];

Поздрави!

1
DimitarKarev avatar DimitarKarev 87 Точки

Благодаря за помоща. Фикса който ми предложи не реши проблема, но ми подсказа къде точно е. Кода ми не работи в случай че елементите нарастват с повече от 1. И трябва да взема номера на елемента от Input масива а не неговата стойност. С това + още няколко модификаций успях да взема 100-те точки.

0
puffed avatar puffed 289 Точки

Моля, но не съм много съгласна с това, което казваш. Кодът ти работеше коректно в частта, в която проверява за нарастващи елементи и то с повече от 1: 

if (input[i] < input[i + 1]) current++;

Погледнах и условието на задачата и там от примерите се вижда , че изходът трябва да е самият елемент от масива, а не само неговата позиция. Иначе примерите са много подвеждащи, защото там всички числа нарастват само с 1.

Сега като тествах повече кода, с който зададе въпроса, видях къде е другата грешка:

var startCurrent = input[0];    => var startCurrent = 0

startCurrent = input[i + 1];     =>  startCurrent = i + 1;

-> тук трябва да са индексите на съответните елементи; с тези променливи се пазят само позиции в масива, както си направил със startMax, но после й присвояваш startCurrent, което в твоя код са две съвсем различни неща. В случая не знам дали на startMax си имал наистина идеята да присвоиш позиция 0, или стойност 0 :)

 Пусни да видим кода, с който си взел 100-те точки.

0
DimitarKarev avatar DimitarKarev 87 Точки

Да точно това са промените който направих за да минат всички тестове. Под това че кода не работи когато елементите нарастват с повече от 1 имах впредвид при печатането накрая. Отново Благодаря за отделеното време и за помоща.

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