Loading...

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

Kralev avatar Kralev 15 Точки
Best Answer

Здравейте! Условието е леко подвеждащо, но отговорът се крие в него! Там казват, че ако дължината на думите е различна то тогава те са еднакви само ако имат еднакъв брой различни символи! Тоест ако думата abcd  има 4 различни символа - a, b , c, d и думата zzffgghh има 4 различни символа - z, f, g, h тези две думи са взаимно заменяеми! Аз като решавах това ми беше като жокер - те думите и да са еднаква дължина ако едната има повече различни символа от другата то тогава няма как да съвпадат!

Ето го моят код за задачата : http://pastebin.com/SWHEJTRP

Надявам се да съм от помощ!

0
20/10/2016 23:53:04
Losko avatar Losko 69 Точки

Аз явно съм много тъп, понеже не мога да разбера условието... indecision Ако някой го обясни като за прости хора ще съм благодарен!

1
19/10/2016 12:23:24
AlexHristov avatar AlexHristov 20 Точки

Може би малко неясно са дали условието, но след известни мъки го схванах така: ако едната дума е по-къса от другата, то трябва да удължим късата дума, като повторим елементите и, започвайки от първия и по този начин да увеличим първата дума до дължината на втората дума. Това става с цикъл в който елементите се вземат по следния начин - (i % n, където n е дължината на по-дългия стринг). Имаше такава задача от масивите. И след това може да сравняваме елементите на изравнените по дължина масиви. Надявам се това обяснение да ти подскаже клчюча към разбирането на условието на задачата. Струва ми се, че би могло по-добре (по-достъпно) да я изпишат.

0
Losko avatar Losko 69 Точки

Аз избщо не мога да разбера обяснението за "Magic exchangeable words". Преди имаше задачи в които се търсеше магическо число да кажем. И беше обяснено, че то е число коеот ( и тука някъкво условие по което се проверява) в случая нищо не мога да разбера.....

0
AlexHristov avatar AlexHristov 20 Точки

Може да ти подскаже последния пример в задачата, с по-късата и по-дългата дума: " ("Clint" and "Eastwaat" are exchangeable because 'a' and 't' are already mapped as 'l' and 'n' )." От друга страна ако съпоставим това с последния пример от таблицата: " Clint Eastwood - false" - защото 'o' и 'd'  не се намират в думата "Clint".

На всяка буква от първия стринг трябва да съответства само една буква от втория. Ако съответстват две букви тогава is not "Exchangeable". 

Така го разбирам аз, но не съм сигурен, че изчерпвам всички нюанси, всички възможности.

Не се подценявай. Успех!

0
IvMironov avatar IvMironov 35 Точки

Здравей,

Мисля, че нямаш нужда от първата проверка за еднаквост на дължините, т.к. независимо от дължините ще трябва да си добавиш в речника подходящите чарове от думите в речника, до размера на по-късата дума. Мисля, че проверките трябва да са едновременно за firstChar и secondChar и ти липсва проверка например за това, какво се случва ако firstChar го няма, но secondChar го има, както и ако: secondChar липсва, при което има два различни изхода ако firstChar го има или липсва.

Като напълниш масива до размера на по-късата дума си проверяваш дали има разлика в дължините и ако да, проверяваш останалите чарове от по-дългата, дали се съдържат в Key-ако по-дългата дума ти е първата и във Value ако по-дълга е втората дума.

Поздрави

0
AlexHristov avatar AlexHristov 20 Точки

Благодаря много. Много полезен отговор. Както изглежда съм пропуснал съществени неща.

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