งานของคุณคือการสร้างโปรแกรมที่เมื่อทำงานจะส่งคืนตัวเองเป็นเอาท์พุท (ซึ่งเรียกว่าควินิน) อย่างไรก็ตามควินินนี้จะต้องn
ส่งคืนควินินเมื่อมีการคัดลอกเวลา แต่ด้วยอักขระแต่ละตัวที่ซ้ำกันในn
เวลาที่n
เป็นจำนวนเต็มบวก
หากโปรแกรมดั้งเดิมของคุณคือDerp
:
Derp -> Derp (must return itself as output to be a quine)
DerpDerp -> DDeerrpp
(the "Derp" is copied twice, so each character in the output has to be copied twice)
DerpDerpDerp -> DDDeeerrrppp
etc. etc.
โปรดทราบว่าคุณได้รับอนุญาตให้มีช่องว่างในโปรแกรม "base" ของคุณ แต่จะถูกนับเมื่อ "interweaving" สมมติว่าโปรแกรมของคุณคือ
Derp
{newline}
(ขึ้นบรรทัดใหม่หมายถึงการขึ้นบรรทัดใหม่และมีพื้นที่เพิ่มเติมหลังจากDerp
) เมื่อทำซ้ำจะกลายเป็น
Derp
Derp
{newline}
คุณต้องส่งออก
DDeerrpp
{newline}
{newline}
โปรดทราบว่ามี2
ช่องว่างเพิ่มเติมหลังจากDDeerrpp
ช่องว่างพิเศษหลังจากที่
กฎและข้อกำหนด:
- โปรแกรมของคุณต้องมีอักขระที่แตกต่างอย่างน้อยสองตัว (ซึ่งแสดงว่ารหัสของคุณต้องมีความยาวอย่างน้อย 2 ไบต์)
- ใช้กฎมาตรฐานควินิน
นี่คือรหัส - กอล์ฟดังนั้นรหัสที่สั้นที่สุดในหน่วยไบต์ชนะ!