Год назад был объявлен конкурс на представление номера года арифметическими выражениями из цифр. В этом году Harry поспешил все испортить :), опубликовав свои наработки заранее. Но мы никому не позволим лишить участников ruSO новогоднего раздумья! :) Просто немного изменим правила. В этот раз конкурс — битовый. Задача — представить число 2023 с помощью как можно меньшего количества одинаковых цифр. Можно использовать скобки, из арифметических операций - только плюс и минус (а также унарный минус), и побитовые операции — И (&), ИЛИ (|), ИСКЛЮЧАЮЩЕЕ ИЛИ (^), ОТРИЦАНИЕ (~), сдвиги (<< и >>). Еще — то же самое для ряда цифр 1234567890 и 9876543210 - постараться по возможности получить 2023 для всех подпоследовательностей — ну, там, для 1234567, 12345678 и так далее. Ноль не должен быть тривиальным (например, в конце +0)! Поскольку конкурс чисто развлекательный, пусть победителя определит голосование за ответы. Понятно, что чем меньше цифр использовано — тем круче решение. Но не менее важна и эстетика решения. А теперь внимание! Мой приз - 250 баллов плюс все, что будет заработано за счет плюсов этому вопросу. Так что не забывайте давить на треугольник вверх рядом с ним! :) Приглашаю также поучаствовать спонсоров с наградами понравившимся ответам. Срок проведения - 10 дней, т.е. окончательные результаты подбиваем после Рождества, 8 января. PS Допускаю, что здесь могут быть немного разные результаты в разных языках и компиляторах, связанные с размерами типов и т.п. — но здесь вся ответственность на участнике и болельщиках. Считаете, что представление неверное - не голосуйте. PPS С Новым годом! :) И будьте активнее, активнее! :) PPPS Осталось несколько дней, и только 4 ответа. И всего 18 голосов на все 4 ответа. Просьба ну хоть немного активнее участвовать/голосовать! Это же не конкурс а курам на смех. PPPPS Награда по результатам голосования участниками вручена. Должен сказать прямо, что меня удивляют результаты голосования, но спорить с ними я не могу. 12 плюсов за 7 формальных (проходящих условия конкурса) ответов и 3 вне конкурса, и 9 за 26 формальных и 13 неформальных. Но — не буду спорить, баллы вручены. Но воспользуюсь правом выступить и как спонсор для понравившегося ответа, потому что с точки зрения эстетики в моих глазах внеконкурсный ответ с семерками перекрывает все 26 приведенных формальных ответов. Правда, 350 баллов мне ruSO не позволило дать в награду, только 500 :) На этом с данным конкурсом я заканчиваю, больше в эти игры я не играю :(
Ответ Почти зеркальное из восьмерок 8^(-8>>8)+(8<<8)^8+8.<br>Или чуть переиграть (-8<<8^-8>>8)-(8+8+8). Для красоты часть (8+8+8) можно заменить, например, (8^8+8) или (8+8|8). С двойками не такое красивое -(-(2<<-22)|(-2>>>-2)+22). Я уже упомянал в обсуждении конкурса 9<<999|999.<br>Если 9 сдвинуть на 999 разрядов влево, то получаем вместо 48217887323382029442679127207700081475263216526749012334968767476665797300622125512193927046706313615741760281289891607133421537856154131961930599086143586617705554986709039434394835722780670138450793819688709137426118735703294454016244947757346783115570384149589439754471934242436809740767425506312192 всего лишь 1152, что объединяя положительными битами с 999 получаем 2023: 1152 10010000000 999 1111100111 2023 11111100111 Вообще, 999 - число в буквальной степени магически сходится с 2023. Как видно, к выражению x|999 в качестве x можно подобрать любое число от 1024 до 2023 при условии, что в значении 4ый и 3ий биты будут отрицательны. Очень похожее с тройками, но содержит запрещенные умножения 33*33|333*3. Тоже похоже, но интересно, и опять умножение 9<<-9*9*9|999.<br>Вот еще интересное с девятками без умножений -(-9<<9)^999+(9<<9).<br>Если найдется что-то интересное или симметричное, добавлю. Я считаю оператор ~ читерским, о чем упомянул в комментариях к вопросу, но я не откажу себе в удовольствии по-пользоваться им: ~8^-8<<8^8+8 ~-(-2^22^-2<<-22) ~-(22*22+22<<2) (умножение) <br>Сделал небольшую песочницу для тестов: