Ошибка.
Попробуйте повторить позже
На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
1. Строится восьмеричная запись числа N.
2. Далее эта запись обрабатывается по следующим правилам:
а) если в записи числа больше четных цифр, то складывается сумма всех четных цифр в записи числа, переводится в восьмеричную систему счисления и дописывается в конец числа;
б) если в записи числа больше нечетных цифр, то складывается сумма всех нечетных цифр в записи числа, переводится в восьмеричную систему счисления и дописывается в конец числа;
в) если в записи числа одинаковое количество четных и нечетных цифр, то складывается сумма всех четных цифр в записи числа и делится нацело на 2, затем переводится в восьмеричную систему счисления и дописывается в конец числа;
Полученная таким образом запись является восьмеричной записью искомого числа R.
Например, для исходного числа результатом является число , а для исходного числа результатом является число .
Укажите максимальное число N, для которого искомое число R не больше 870. В ответе запишите это число в десятичной системе счисления.
for n in range(1,1000): t = oct(n)[2:]# Перевод числа в восьмеричную систему счисления count_even = t.count(’0’)+t.count(’2’)+t.count(’4’)+t.count(’6’)#Подсчёт чётных цифр в числе count_odd = t.count(’1’)+t.count(’3’)+t.count(’5’)+t.count(’7’)#Подсчёт нечётных цифр в числе if count_even > count_odd:#Если чётных цифр больше t += oct(sum([int(i) for i in t if int(i) % 2 == 0]))[2:]#Добавляем восьмеричную к числу запись суммы чётных цифр elif count_odd > count_even:#Если нечётных цифр больше t += oct(sum([int(i) for i in t if int(i) % 2 != 0]))[2:]#Добавляем к числу восьмеричную запись суммы нечётных цифр else:#Если количество цифр равно t += oct(sum([int(i) for i in t if int(i) % 2 == 0]) // 2)[2:]#Добавляем к числу восьмеричную запись суммы чётных цифр, поделенную надвое r = int(t,8)#Перевод в 10сс из 8сс if r <= 870: print(n)
Специальные программы
Программа
лояльности v2.0
Приглашай друзей в Школково и получай вознаграждение до 10%!
Крути рулетку
и выигрывай призы!
Крути рулетку и покупай курсы со скидкой, которая привязывается к вашему аккаунту.
Бесплатное обучение
в Школково
Для детей ДНР, ЛНР, Херсонской, Запорожской, Белгородской, Брянской областей, а также школьникам, находящимся в пунктах временного размещения Крыма обучение на платформе бесплатное.
Налоговые вычеты
Узнай, как получить налоговый вычет при оплате обучения в «Школково».
Специальное предложение
для учителей
Бесплатный доступ к любому курсу подготовки к ЕГЭ или олимпиадам от «Школково». Мы с вами делаем общее и важное дело, а потому для нас очень значимо быть чем-то полезными для учителей по всей России!
Вернём деньги за курс
за твою сотку на ЕГЭ
Сдать экзамен на сотку и получить обратно деньги за подготовку теперь вполне реально!