На этом форуме отвечают на конкретные вопросы. Фраза «я не понимаю, как решать» — это не вопрос. На вопрос «как решить задачу №X» вас отошлют к материалам сайта kpolyakov.spb.ru. За бессвязный поток слов и неспособность формулировать свои мысли — бан.

Если у вас не сходится ответ на какую-то задачу, пожалуйста сразу представляйте свое «правильное» решение.
Программы "заворачивайте" в тэг [pre2]...[/pre2], при этом сохраняются все отступы и применяется моноширинный шрифт. Если у вас используется сочетание "[i]" для обозначения элемента массива или строки, ставьте пробел после открывающей скобки. Иначе система выделит все дальнейшее курсивом.

Для регистрации на форуме щелкните по ссылке «Вход-регистрация» вверху страницы. В открывшееся окошко «ник» введите свою фамилию на русском языке (например, Иванов). В окошко «пароль» введите придуманный вами пароль, состоящий из латинских букв и цифр. Поставьте галочку в окошке «зарегистрироваться, я новый участник» и нажмите кнопку «ОК».

АвторСообщение



Сообщение: 1
ссылка на сообщение  Отправлено: 22.12.22 04:11. Заголовок: Задача 5834


В задаче 5834 у меня получился ответ 4095.
Возможно, я не все условия учла. Помогите разобраться.
Я рассуждала, так.
Взяла приписала максимальные 2 цифры FF.
Числа при делении на16 должно быть нечётное, тогда третья справа цифра 0.
Расчитала ещё три цифры FFF.

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 2 [только новые]







Сообщение: 24
ссылка на сообщение  Отправлено: 07.01.23 15:48. Заголовок: for i in range(2000..


 
for i in range(200000):
a=hex(i)[2::]
if i%2==0: a=a+'f'
else: a=a+'0'
a=a+hex(sum(int(c) if c in '0123456789' else ord(c)-55 for c in a))[-1]
a+=hex(sum(int(c) if c in '0123456789' else int(ord(c)-55) for c in a))[-1]
if a.count(min(list(a)))*5==a.count(max(list(a))): print(i)


Спасибо: 0 
ПрофильЦитата Ответить
Администратор




Сообщение: 3815
ссылка на сообщение  Отправлено: 25.01.23 11:40. Заголовок: Бабкова пишет: Взяла..


Бабкова пишет:
 цитата:
Взяла приписала максимальные 2 цифры FF.
Числа при делении на16 должно быть нечётное, тогда третья справа цифра 0.
Расчитала ещё три цифры FFF.

Не вполне понятно, почему это должно сработать.

Вот вариант правильного решения:
 
def alg( n ):
s = f"{n:X}"
s += 'F' if n % 2 == 0 else '0'
for _ in range(2):
q = sum( int(d,16) for d in s )
s += f"{q%16:X}"
return s

def valid( s ):
m = min( s )
return s.count('F') == 5*s.count( m )

n = 1
while True:
s = alg( n )
if valid( s ):
print( n, s )
break
n += 1


___________________________________________________
Имей мужество пользоваться собственным умом. (И. Кант)
Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 1749
Права: смайлы да, картинки да, шрифты нет, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет