Loading...
djc_bg2015 avatar djc_bg2015 923 Точки

Задача - Replace Palindromes

Здравейте колеги, ето една задачка от мен:

Като вход получавате масив от два елемента. Първият елемент е число n а втория е текст на един ред. 
Заместете в текста всички букви на n буквени палиндроми със символа '*'.

Примерен Вход: ['5', 'My car is honda civic'] 
Очакван Изход: 'My car is honda *****'

Ако два палиндрома се застъпват, вторият не се взима под внимание 

Примерен Вход: ['6', 'aaaaaaa'] 
Очакван изход: '******a' 

Символите интервал, табулация и долна черта не се броят за символи, следователно 'c   iv____i c' също е палиндром.

Примерен Вход: ['5', 'My car is honda c   iv____i c'] 
Очакван Изход: 'My car is honda *   **____* *'

Свалете пълното условие + тестовете от тук.

Ако имате въпроси, можете да ми пишете тук или във фейсбук групата на курса.

Поздрави!

Тагове:
1
JavaScript Fundamentals 16/10/2016 19:29:57
butanfire avatar butanfire 32 Точки

Привет,


Задачката е голяма заигравка, а но условието ти :

дума, не трябва да започва или свършва с определен символ за да бъде считана за палиндром и нейните букви да бъдат заместени. (asdsosvgh => asd***vgh)

Е ужасно.
Тест 4 също е доста показателен за цяло изречение "полиндром".

 

 

Успех на другите! :)

 

Поздрави,

Владо

0
djc_bg2015 avatar djc_bg2015 923 Точки

Здравей, добавих оище един тест и направих файл с условието и всички тестове (доста по - четливо стана).

Лично аз мисля, че по - трудната част на задачата е да отсеяш спейсовете, табовете и долните черти.

Въпреки всичко, след като написах условието написах две решения, едното от които е буквално 12 реда код.

Поздрави!

1
hammer4 avatar hammer4 115 Точки

Реших я, интересна задачка, само гледам че в очаквания изход някои табулации са бая големи а в конзолата ми излизат по-малки. Да се изкарат по същия начин част от условието ли е?

http://pastebin.com/qNAJTsFf

Edit: Смених линка

1
17/10/2016 20:36:12
djc_bg2015 avatar djc_bg2015 923 Точки

Здравей Кирил, браво за решението! Тествах ти кода с тестовете от задачата и изхода е 1:1 :)

Ето ти един сайт, който срванява два текста за идентичност: https://www.diffchecker.com/diff

Поздрави!

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