ผมชอบฮิลแบร์ต Curve
งานของคุณสำหรับความท้าทายนี้คือการถ่ายภาพ (เป็นรูปสี่เหลี่ยมจัตุรัสโดยที่ทุกด้านมีกำลังสองพิกเซลกว้าง) และคลี่คลายมันทีละบรรทัดในรูปแบบซิกแซกและนำกลับไปเป็นเส้นโค้งหลอก - ฮิลแบร์ต .
คลี่คลาย
หากต้องการคลี่คลายคุณจะต้องเริ่มต้นด้วยพิกเซลที่มุมซ้ายบนและเดินทางไปทางขวาจนกว่าคุณจะถึงขอบของรูปภาพ เมื่อคุณกดที่ขอบของรูปภาพคุณจะเลื่อนลงไปที่แถวถัดไปและเริ่มเดินทางไปทางซ้ายจนกว่าคุณจะตีที่ขอบอีกครั้ง คุณจะยังคงคลี่คลายแถวต่อแถวสลับทิศทางในแต่ละครั้งเพื่อให้คุณได้รับหนึ่งโค้งอย่างต่อเนื่อง นี่ควรเป็นเกมงูที่เล่นกันดี
ผลลัพธ์ของการคลายควรเป็นลำดับของพิกเซลที่รวมทุกพิกเซลในครั้งเดียว
Reraveling
เมื่อคุณมีการสั่งซื้อพิกเซลคุณจะจัดเรียงใหม่บนผืนผ้าใบที่มีขนาดเท่ากันใหม่ตามเส้นทางของเส้นโค้งหลอก - ฮิลแบร์ต สำหรับ2**n
ภาพสี่เหลี่ยมจัตุรัสคุณควรใช้การวนซ้ำของเส้นโค้งหลอก - ฮิลแบร์ต แต่ละพิกเซลจะถูกวางในจุดเดียวบนผืนผ้าใบใหม่ คุณควรจัดภาพใหม่เพื่อให้จุดเริ่มต้นที่มุมบนซ้าย (จุดเริ่มต้นของเส้นโค้งงูของเรา) อยู่ที่นั่นและจุดที่มุมล่างขวา (จุดสิ้นสุดของเส้นโค้งงูของเรา) จะถูกวางไว้ที่มุมขวาบน
I / O
โปรแกรมหรือฟังก์ชั่นของคุณควรใช้ภาพของข้อ จำกัด ที่ระบุผ่านวิธีการมาตรฐานและส่งออกภาพอื่นผ่านวิธีการมาตรฐาน
เกณฑ์การให้คะแนน
นี่เป็นโปรแกรมรหัสกอล์ฟที่มีจำนวนไบต์น้อยที่สุดเป็นผู้ชนะ
ตัวอย่าง
อินพุต
เอาท์พุต
อินพุต
เอาท์พุต
อินพุต
เอาท์พุต
ฉันขอแนะนำให้ทดสอบภาพสีขาวหรือสีทึบเพื่อให้แน่ใจว่าคุณจะไม่พลาดพิกเซล
อย่าลังเลที่จะรวมผลลัพธ์ของคุณเองในคำตอบของคุณ!