Radiasi polyglot quine siklik yang dikeraskan

10

Tantangan

Tulis dua program yang:

  • dijalankan dalam dua bahasa pemrograman yang berbeda.
    • Ini mungkin bukan dua versi dari satu bahasa.
  • ketika satu program dijalankan, output program kedua, dan sebaliknya.
  • Kedua program harus berbeda (tidak ada polyglots).

Inilah tangkapannya:

  • Program harus dikeraskan radiasi.
    • Ini berarti bahwa ketika setiap rangkaian (didefinisikan di bawah) karakter dihapus dari salah satu dari dua program, fungsinya tidak akan terpengaruh.n
    • n didefinisikan sebagai jumlah karakter yang dapat dihilangkan dengan fungsionalitas program Anda tidak terpengaruh.
    • n minimal harus1 .

Aturan

  • Celah standar tidak diijinkan.
  • Program Anda harus berupa cyclic quines yang tepat. Mereka mungkin tidak membaca kode sumber mereka sendiri.
  • Penilaian dilakukan sebagai berikut:
    • Skor Anda adalah ...S1+S2n
    • di mana dan adalah ukuran masing-masing program pertama dan kedua Anda ...S1S2
    • dan sebagaimana didefinisikan di atas.n
  • Ini adalah , kemenangan skor terendah.

Penghargaan

Karena tantangan ini sulit dijawab, saya akan memberikan hadiah kepada orang pertama yang menjawab.

dkudriavtsev
sumber
Haruskah program menjadi quines yang tepat?
Mego
@Mego Whoops - lupa menyebutkan itu. Iya.
dkudriavtsev
Ya, "quine yang tepat" bukanlah istilah yang tepat karena mereka bukan quine, tetapi sepertinya Anda mengerti apa yang saya maksud.
Mego
10
Secara pribadi, saya tidak berpikir ini benar-benar menambah banyak tantangan quine semiquine dan pengerasan radiasi yang sudah kita miliki; kedua kategori telah disatukan dalam begitu banyak kombinasi sehingga sangat sulit untuk menghasilkan kombinasi yang benar-benar asli.
ETHproduksi
2
Anda mungkin harus menambahkan semacam hadiah untuk menjawab ini. Saya merasa terlalu sulit bagi banyak orang untuk mau mencoba. Saya melihat ini tidak memiliki jawaban dan saya berpikir "ooh tantangan quine, saya suka itu!" tapi kemudian saya membaca SEMUA PERATURAN dan itu benar-benar membuat saya jijik.
MD XF

Jawaban:

3

Gol> <> dan > <> , (117 byte + 117 byte) / 1 = 234

Gol> <>

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

Cobalah online!

> <>

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

Cobalah online!

Verifikasi!

Kedua program ini sama, baru saja dibalik. Keduanya mengikuti struktur kode umum yang sama.

Penjelasan (Gol> <> di atas,> <> di bawah)

\\<<                           <<\\  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
Jo King
sumber