Loading...
MartinBG avatar MartinBG 4571 Точки

Струва ми се, че решението е излишно усложнено (да си призная, не успях да хвана логиката и след второто прочитане).

Най-простото решение на този проблем е входа да се разбие на отделни цифри, които да се сортират в намаляващ ред - това автоматично ни дава най-голямото възможно число с тези цифри. За сортирането може да се използва функция от стандартната библиотека или да се напише собствена такава.

1
19/01/2021 15:33:02
LachezarYankov65 avatar LachezarYankov65 7 Точки

Звучи прекрасно.Ще се радвам да видя пример или поне функциите.

1
MartinBG avatar MartinBG 4571 Точки

@LachezarYankov65

Ето примерно решение на задачата, което използва горния алгоритъм:

number = list(input())
number.sort(reverse=True)
print(''.join(number))

На първия ред преобразуваме стринга, който сме получили, в лист от отделните му символи. Например при вход '1234' ще получим ['1', '2', '3', '4'].

После сортираме листа в обърнат ред, т.е. ще получим ['4', '3', '2', '1']

Накрая сливаме листа в стринг, който отпечатваме: '4321'

0
20/01/2021 00:18:12
LachezarYankov65 avatar LachezarYankov65 7 Точки

Погледнах из интернет и четох за подобно решение.Не знам дали съм прав, но ми се струва, че не е нормално да ползваме функционалности за които все още нямаме знания предадени от курса.Лист ще изучаваме по-нататък.Това е причината да е така сложно и до голяма степен изглеждащо нелогично решение ми на тази задача.Но да речем, че тук имате своето основание.Вероятно инатът ми е безпочвен.Но това все пак е втори проблем на който не ми давате конкретен отговор.Вече имам 3-ти въпрос, на който се надявам да помогнете.След малко ще го публикувам.

-1
Julianh12 avatar Julianh12 3 Точки

Ето ти едно решение ползвам листове,но ги обхождам с итерации,това е алгоритъма bubble sort

array=list(input())

n=len(array)
string=[]
text=""
for i in range(n):
    already_sorted=True
    for j in range(n-1):
        if array[j]<array[j+1]:
                array[j],array[j+1]=array[j+1],array[j]

                already_sorted=False
    if already_sorted:
        break

text="".join(str(item) for item in array)
print(text)
0
Rosty_D avatar Rosty_D 14 Точки
Просто решение, но ми отне доста време дса се сетя :)
https://pastebin.com/9Hsr2mxR

 

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