Форум » Выполнение и анализ алгоритмов для исполнителей » 147 » Ответить

147

alexkam: Доброе утро! Задание №147 из Вашего сборника. у меня ответ получается 108, у вас ответ 111. Да и 1101100 - 108 подходит по уcловию В Вашем решении получается число 13, но оно то как раз и дает число 108 (13 - 1101100) Вот код программы: [code] for n in range(1,1000): r = bin(n)[2:] r += r[-1] r += str(r.count('1')%2) r += str(r.count('1')%2) print(int(r,2),n) [/code] Здесь минимальное большее 105 получается 108

Ответов - 1

elpov06: [pre2]for n in range(1,1000): r = bin(n)[2:] r1= bin(n)[2:] #print(r) r += r[-1] #print(r) r += str(r1.count('1')%2) #print(r) r += str(r1.count('1')%2) #print(r) print(int(r,2),n)[/pre2] Затем справа дописывается 0, если в двоичном коде числа !!!!!!!!!!!!!!!!!N!!!!! чётное число единиц, и 1, если нечётное.



полная версия страницы