ตอนนี้ทุกวันนี้ทุกคนเปลี่ยนมาใช้IPv6แล้ว (ขวา?)
งานของคุณคือการเขียนโปรแกรมที่พิมพ์ออกทั้งหมดอยู่ IPv6
คุณควรเขียนโปรแกรมเต็มรูปแบบที่ไม่มีอินพุตและพิมพ์ที่อยู่ IPv6 หนึ่งรายการต่อบรรทัดและไม่มีเอาต์พุตอื่น โปรแกรมของคุณจะต้องพิมพ์ที่อยู่ทั้งหมด 2 128ที่อยู่รวมถึงที่อยู่ที่ไม่ถูกต้อง แต่ละที่อยู่จะต้องพิมพ์อย่างแน่นอนหนึ่งครั้ง คุณสามารถพิมพ์ที่อยู่ในลำดับใดก็ได้
แต่ละที่อยู่อาจพิมพ์เต็มจำนวนโดยมี 8 กลุ่มเป็นเลขฐานสิบหก 4 ตัวคั่นด้วยเครื่องหมายโคลอนเช่น
2001:0db8:85a3:0000:0000:8a2e:0370:7334
คุณอาจใช้ตัวย่อมาตรฐานใด ๆ จากRFC 5952ตามดุลยพินิจของคุณ:
- ค่าศูนย์นำหน้าในกลุ่มอาจถูกละเว้นยกเว้นว่า
0
ไม่สามารถย่อได้อีก ::
อาจใช้อย่างน้อยหนึ่งครั้งต่อหนึ่งที่อยู่เพื่อย่อลำดับของกลุ่มทั้งหมดที่เป็นศูนย์อย่างน้อยหนึ่งกลุ่ม- ตัวเลขฐานสิบหกอาจใช้ตัวพิมพ์เล็กหรือตัวพิมพ์ใหญ่
หากคุณบรรลุข้อเสนอแนะจากตัวแทน RFC 5952 (ตัวพิมพ์เล็กเท่านั้นเป็นตัวแทนที่สั้นที่สุดที่มี::
ใช้อย่างเร็วที่สุดเท่าที่เป็นไปได้ถ้ามีหลายสถานที่ที่มันสามารถนำมาใช้) คุณจะได้รับโบนัส 20%
เนื่องจากขนาดของเอาต์พุตโปรแกรมของคุณไม่คาดว่าจะเสร็จในขณะที่เรานั่งอยู่ที่นั่น โปรแกรมของคุณอาจถูกขัดจังหวะด้วยวิธีการภายนอกบางอย่าง ( Ctrl+ C, ดึงกำลังไฟ, ... ) โปรแกรมของคุณจะต้องสร้างเอาต์พุตเป็นสตรีมดังนั้นหลังจากรอ "สมเหตุสมผล" โปรแกรมจะสร้างบางบรรทัด โดยทั่วไปการสร้างสตริงขนาดยักษ์ในหน่วยความจำเท่านั้นเพื่อพิมพ์ในตอนท้ายไม่ได้รับอนุญาต โปรแกรมใดก็ตามที่หน่วยความจำไม่เพียงพอบนพีซี“ มาตรฐาน” จะถูกตัดสิทธิ์ (อย่างไรก็ตามหากโปรแกรมของคุณถูกปล่อยให้ทำงานเป็นเวลานานพอสมควรจะต้องพิมพ์ที่อยู่ IPv6 ทั้งหมดจากนั้นออก)
(หากเงื่อนไขนี้เป็นปัญหาสำหรับเว็บล่ามที่รันโปรแกรมจนเสร็จสิ้นจากนั้นให้คุณเห็นผลลัพธ์และคุณไม่มีล่ามที่โฮสต์ให้ทดสอบโปรแกรมของคุณในปัญหาที่มีขนาดเล็กลงจากนั้นจึงปรับอย่างระมัดระวัง เต็ม 2 128 )
คะแนนของคุณคือความยาวของโปรแกรมเป็นไบต์คูณด้วย 0.8 ถ้าคุณได้รับโบนัส มันคือรหัสกอล์ฟดังนั้นคะแนนต่ำสุดชนะ