В
Все
Х
Химия
В
Видео-ответы
А
Алгебра
Г
Геометрия
О
ОБЖ
Д
Другие предметы
У
Українська література
Р
Русский язык
Б
Беларуская мова
У
Українська мова
Э
Экономика
Ф
Физика
М
Математика
Ф
Французский язык
Г
География
И
Информатика
М
МХК
О
Окружающий мир
П
Психология
Н
Немецкий язык
О
Обществознание
П
Право
И
История
М
Музыка
Л
Литература
Қ
Қазақ тiлi
Б
Биология
А
Английский язык
natata23081
natata23081
10.03.2020 19:14 •  Информатика

Умиши развитое эстетическое чувство. он считает, что не все числа одинаково порядочные. когда ему грустно, он начинает придумывать числа и приводить их в порядок. миша любит рассматривать сумму цифр числа. для того чтобы в порядок число a, он сначала записывает само число. потом он пишет сумму цифр этого числа. затем — сумму цифр суммы цифр и так далее, до тех пор, пока очередное число не станет однозначным. он считает, что результатом в порядок числа a является сумма всех выписанных чисел, включая само число a. миша настолько любит этот процесс, что он даже заменяет ему счёт овец, когда долго не получается заснуть. он помнит, что вчера ночью, когда он в уме привёл в порядок число a, у него получилось число b. но вот беда — он не помнит, какое именно он взял число a! ему в отыскании этого числа. входные данные на ввод подаётся единственное целое число b (1 ≤ b ≤ 109 ) выходные данные если существует такое число a, что после его в порядок, получается b, то выведите любое такое число. если же миша где-то ошибся в расчётах и такого числа не существует, то выведите -1. примеры тестов входные данные 42 выходные данные 29 входные данные 20 выходные данные -1 примечание пояснение к первому примеру. последовательность сумм цифр для 29 состоит из чисел 29, 11, 2. соответственно, после в порядок число 29 превращается в число 42 = 29 + 11 + 2. решал вот так, def order(n): return n + order(sum(map(int, str( if n > 9 else n def main(): n = int( for i in range(105): if order(i) == n: print(i) break else: print(-1) if __name__ == "__main__": main() но только 8/12 тестов. язык любой, если что в питон сам переведу. цена !

Ответ:
полина90602
полина90602
25.05.2020 21:07

a = int(input())

s = 1

flag = True

while s < a:

   ch = s

   count = ch

   while ch > 9:

       ch = sum(map(int,str(ch)))

       count += ch

   if count == a:

       print(s)

       flag = False

       break

   s += 1

if flag:

   print(-1)

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?