Професионална програма
Loading...
+ Нов въпрос
noisia7 avatar noisia7 0 Точки

5. Emoticon Finder - Problem

Здравейте имам проблем с тази задача :

Find all emoticons in the text. An emoticon always starts with ":" and is followed by a symbol.
The input will be provided as a single string.

Example: There are so many emoticons nowadays :P. I have many ideas :O what input to place here :)
Output: 

:P

:O

:)

Пресмята ми вярно до колкото успях да се сетя за условия но в judge 80/100 (runtime error).

Някой може ли да помогне 

https://pastebin.com/sns1jgrW 
 

Поздрави

Тагове:
0
Python Fundamentals
Xpuck0 avatar Xpuck0 69 Точки

Здравей,

 

Кода ти е доста откачен :D При случай с двуеточия едно след друго, би трябвало да гръмне. Сигурно и за това получаваш 80/100. 

Смени си изцяло логиката. Върти цикъл за всеки символ от текста и прави проверка дали символа е двуеточие. Ако е, принтирай двуеточие + символа. Съвсем простото и първично решение ще ти даде 100/100. Дори може с компрехеншън.

Ето примерно решение  

 

Поздрави и успех

0
noisia7 avatar noisia7 0 Точки

Така ми дойде идеята на първо четене, иначе от лекцията видях,че Слави Капсалов я е решил с индекс и входа го държи като стринг и исках нарочно да го направя по Различен начин :)  С това [ i + 1]  излизаш извън стринга :P Мерси 

Има група Python Fundamentals  https://discord.gg/c5DKjx  в дискорд , ела ако те няма още :)

П.С вчера аз питах за делегат решението над твоя въпрос на лекцията 

0
Xpuck0 avatar Xpuck0 69 Точки

Текста не свършва с двуеточие и е споменато, че ще има символ след това. Но да приемем, че е възможно да завърши с двуеточие. В такъв случай просто трябва да променим рейнджа. Няма да проверяваме последния символ, защото като е последен няма как да направи емотка :P

[print(f":{text[i + 1]}") for i in range(len(text) - 1) if text[i] == ':']
0
noisia7 avatar noisia7 0 Точки

Благодаря, много е красиво с компрехеншъна :)

0