Радиационно-упрочненный циклический полиглот

10

Вызов

Напишите две программы, которые:

  • работать на двух разных языках программирования.
    • Это могут быть не две версии одного языка.
  • когда запускается одна программа, она выводит вторую программу и наоборот.
  • Две программы должны быть разными (без полиглотов).

Вот подвох, хотя:

  • Программы должны быть защищены от радиации.
    • Это означает, что когда любой набор из N (определенных ниже) символов удаляется из любой из двух программ, их функциональность не изменяется.
    • N определяется как количество символов, которое может быть опущено, если функциональность вашей программы не затронута.
    • N должно быть не менее1 .

правила

  • Стандартные лазейки запрещены.
  • Ваши программы должны быть правильными циклическими квин. Они могут не читать свой собственный исходный код.
  • Скоринг проводится следующим образом:
    • Ваш счет S1+S2N
    • где S1 и S2 - размер вашей первой и второй программ соответственно…
    • и N такой, как определено выше.
  • Это , выигрывает самый низкий балл.

Награда

Поскольку на этот вызов трудно ответить, я буду давать награду первому, кто ответит.

dkudriavtsev
источник
Должны ли программы быть правильными?
Мего
@Mego Whoops - забыл упомянуть об этом. Да.
дкудрявцев
Ну, «правильная квиня» - не правильный термин, поскольку они не квин, но, кажется, вы поняли, что я имел в виду.
Мего
10
Лично я не думаю, что это действительно добавляет много к проблемам с полукуиной и радиационной стойкостью, которые у нас уже были; Обе категории уже объединены в стольких комбинациях, что чрезвычайно сложно придумать действительно оригинальную комбинацию.
ETHproductions
2
Вы, вероятно, должны добавить какую-то награду за ответ. Я чувствую, что многим людям очень сложно попробовать. Я видел, что на это не было ответов, и я думал: «О, вызов Куайн, я люблю их!» но потом я прочитал ВСЕ ПРАВИЛА, и это полностью отпугнуло меня.
MD XF

Ответы:

3

Gol> <> и > <> , (117 байт + 117 байт) / 1 = 234

Gol> <>

\\<<'3d*}}}}~}:r0<}!o::! ?>~~a<o>Hr~Kl a}}:?%2l}}}ss2"<<\\
\\<<'3d*}}}}~}:r0<}!o::! ?>~~a<o>Hr~Kl a}}:?%2l}}}ss2"<<\\

Попробуйте онлайн!

> <>

\\<<"2ss}}}l2%?:}}a lK~rH>o<a~~>? !::o!}<0r:}~}}}}*d3'<<\\
\\<<"2ss}}}l2%?:}}a lK~rH>o<a~~>? !::o!}<0r:}~}}}}*d3'<<\\

Попробуйте онлайн!

Проверка!

Эти две программы одинаковы, только наоборот. Они оба следуют одинаковой общей структуре кода.

Пояснение (Gol> <> вверху,> <> внизу)

\\<<                           <<\\  Transition to the copy of the code that is not radiated
\\<<                           <<\\

                              "    Wrapping string literal over the rest of the code
                              '

                           ss2     Push the string character
                           *3d

                        }}}        Rotate the "<<\" to the correct end of the stack
                        }}}

                 }}:?%2l           Use the extra \ to replace a possible irradiated copy
                    }~}:

       ~     lK                    Duplicate the code
        ~~>? !::o!}<0r             Print a copy of the code in reverse

                a                  Push a newline
       a
    Hr                             Reverse, print the rest of stack and terminate
    >o<                            Print the rest of the stack and terminate
Джо Кинг
источник