1
Patch ฟักทองแบบสุ่ม
ฉันกำลังเดินผ่านแพทช์ฟักทองในวันอื่น ๆ สำหรับงานเลี้ยงวันเกิดและสังเกตเห็นเถาวัลย์ฟักทองทำรูปแบบที่ดีพร้อมกับวน, วน, และหน่อ เรากำลังจะจำลองสิ่งนี้ด้วยศิลปะ ASCII บางส่วน (()) \ p--q p-----q / \ / \ (()) b--d (()) กฎการก่อสร้างเถา มีเถาวัลย์หลักเพียงอันเดียวเท่านั้นซึ่งประกอบด้วย\ / - p q b dตัวละครเพียงอย่างเดียว เถาวัลย์เดินทางจากซ้ายไปขวาผ่านหน้าจอเท่านั้น กล่าวอีกนัยหนึ่งสมมติว่าคุณเป็นมดเริ่มต้นที่ตัวอักษรเถาซ้ายสุด ในขณะที่คุณไปยังตัวละครถัดไปที่อยู่ติดกันบนเถาวัลย์หลักคุณจะต้องย้ายหนึ่งคอลัมน์ไปทางขวา - ไม่ไปทางซ้าย เมื่อเถาวัลย์เปลี่ยนทิศทางp q b dต้องใช้อักขระตัวใดตัวหนึ่งในการจำลองลูป pร่วมเถาเดินทางไปทางทิศตะวันออกเฉียงเหนือที่qสำหรับไปทางทิศตะวันออกเฉียงใต้bจากทิศตะวันออกไปทางทิศตะวันออกและdจากตะวันออกไปภาคตะวันออกเฉียงเหนือ โปรดทราบว่า "ห่วง" ของจดหมายเชื่อมต่อกับเถาแนวนอนและ "ลำต้น" ของจดหมายเชื่อมต่อกับเส้นทแยงมุม จุดเริ่มต้นของเถาต้องเป็นหนึ่งในpหรือb(ตัวเลือกของคุณไม่จำเป็นต้องสุ่ม) และเริ่มต้นในแนวนอน จุดจบของเถาต้องเป็นหนึ่งqหรือd(ตัวเลือกของคุณไม่จำเป็นต้องสุ่ม) และต้องจบในแนวนอน โปรดทราบว่าสามารถวางลูปได้ทันทีติดกับลูปอื่น ๆ (เช่นpdเป็นซับสตริงที่ถูกต้องของเถาวัลย์) แต่นั่นอาจทำให้ยากต่อการวางฟักทองในภายหลัง …