วัตถุประสงค์
ฉันมีรูปสวย ๆ ที่ฉันอยากแขวนบนผนังของฉัน และฉันต้องการให้มันแขวนไว้อย่างน่าตื่นเต้นดังนั้นฉันจึงเลือกที่จะแขวนมันไว้ที่nเล็บซึ่งnเป็นจำนวนเต็มบวก
แต่ฉันก็ไม่แน่ใจเช่นกันดังนั้นหากฉันเปลี่ยนใจฉันไม่ต้องการให้ปัญหากับการถ่ายภาพลงไปมากนัก ดังนั้นการถอดnเล็บใด ๆควรทำให้ภาพตกลงมา ฉันพูดถึงว่าไม่มีแรงเสียดทานในบ้านของฉัน?
คุณสามารถช่วยฉันได้ไหม?
กฎระเบียบ
- โปรแกรมของคุณจะต้องอ่านหมายเลข
nจาก stdin และพิมพ์ไปยัง stdout (หรือเทียบเท่าภาษาของคุณ) - เอาต์พุตต้องเป็นโซลูชันตามข้อกำหนดคุณลักษณะเอาต์พุตโดยไม่มีการต่อท้ายหรืออักขระนำหน้า อย่างไรก็ตามช่องว่างต่อท้ายและ / หรือบรรทัดใหม่เป็นที่ยอมรับ
- คุณต้องใช้เล็บอย่างแน่นอน
n - สมมติว่าโลกไม่มีแรงเสียดทานทางออกของคุณจะต้องปฏิบัติตามเงื่อนไขดังต่อไปนี้:
- แขวนรูปภาพตามที่อธิบายโดยโซลูชันของคุณรูปภาพจะต้องไม่ล้มลง
- หากเล็บใด ๆ ถูกลบออกภาพจะต้องล้มลง
- ช่องโหว่มาตรฐานใช้ โดยเฉพาะอย่างยิ่งคุณไม่สามารถส่งคำขอเช่นโปรแกรมการตรวจสอบถึงวิธีแก้ไขปัญหาแบบบังคับกำลัง
โปรดทราบว่า 4.2 หมายความว่าnเล็บทั้งหมดต้องเกี่ยวข้อง
สเปคเอาท์พุท
1เล็บทั้งหมดได้รับการตั้งชื่อจากซ้ายไปขวากับตำแหน่งที่พวกเขาอยู่ในราคาเริ่มต้นที่- มีวิธีพื้นฐานสองวิธีในการวางสายรอบเล็บ: ตามเข็มนาฬิกาและทวนเข็มนาฬิกา เราแสดงให้เห็นถึงขั้นตอนตามเข็มนาฬิกาด้วยและขั้นตอนทวนเข็มนาฬิกาด้วย
>< - ทุกครั้งที่มีการร้อยเชือกรอบ ๆ เล็บมันจะออกมาที่ด้านบนของเล็บดังนั้นการกระโดดข้ามเล็บหมายความว่าสายนั้นจะข้ามไปที่ด้านบนของเล็บกลาง
- วิธีการแก้ปัญหาทุกคนต้องเริ่มต้นบนเล็บและสิ้นสุดในวันที่เล็บ
1n - ผลลัพธ์จะต้องประกอบด้วยลำดับของขั้นตอนที่ขั้นตอนคือการรวมกันของชื่อเล็บและทิศทางในการวางสายรอบ
ตัวอย่างผลลัพธ์
นี่คือตัวอย่างเอาต์พุตสำหรับn=5และn=3:
1>4<3<2>4>5< # n=5, incorrect solution
1>2<1<2>3<2<1>2>1<3> # n=3, correct solution
และนี่คือการแสดงออกของการแก้ปัญหาที่ไม่ถูกต้องสำหรับn=5(awsumz gimp skillz)

วิธีการแก้ปัญหาที่ถูกต้องสำหรับn=1เป็นเพียงหรือ1> 1<สำหรับเล็บหลาย ๆ ตัวอาจมีทางออกที่แตกต่างกัน คุณจะต้องส่งออกเพียงครั้งเดียวเพราะนี่เป็นส่วนหนึ่งของคะแนนของคุณ
การตรวจสอบ
คุณสามารถตรวจสอบว่าวิธีการแก้ปัญหาที่ถูกต้องที่นี่: www.airblader.de/verify.php
มันใช้คำขอ GET เพื่อให้คุณสามารถโทรได้โดยตรงถ้าคุณต้องการ ตัวอย่างเช่นหากfooเป็นไฟล์ที่มีโซลูชันในแต่ละบรรทัดคุณสามารถใช้
cat foo | while read line; do echo `wget -qO- "www.airblader.de/verify.php?solution=$line" | grep "Passed" | wc -l`; done
หากคุณเชื่อว่าวิธีแก้ไขนั้นถูกต้อง แต่ผู้ตรวจสอบระบุว่าไม่ถูกต้องโปรดแจ้งให้เราทราบ!
แก้ไข:และหากผลลัพธ์ของคุณยาวจนคำขอ GET ไม่ตัดให้แจ้งให้เราทราบและฉันจะสร้างเวอร์ชันคำขอ POST :)
เกณฑ์การให้คะแนน
นี่คือรหัสกอล์ฟ คะแนนคือจำนวนไบต์ของซอร์สโค้ดของคุณในการเข้ารหัส UTF-8 เช่นใช้เครื่องมือนี้ อย่างไรก็ตามมีโบนัสที่เป็นไปได้สำหรับการส่งทุกครั้ง:
เรียกใช้โปรแกรมของคุณสำหรับทุกnในช่วง[1..20]และเพิ่มความยาวของเอาท์พุทขึ้นมาเพื่อตรวจสอบของคุณคะแนนเอาท์พุท ลบคะแนนของคุณออกจาก6291370ที่จะได้รับจำนวนของคะแนนโบนัสที่คุณอาจหักจากการนับไบต์ของคุณคุณจะได้รับคะแนนรวม ไม่มีโทษหากคะแนนเอาท์พุทของคุณสูงกว่าจำนวนนี้
การส่งที่มีคะแนนรวมต่ำสุดชนะ ในกรณีที่ไม่น่าเป็นไปได้ tie breakers จะอยู่ในลำดับนี้: คะแนนโบนัสที่สูงขึ้น, จำนวนไบต์ที่ลดลง, วันที่ส่งก่อนหน้า
โปรดโพสต์ทั้งชิ้นส่วนแต่ละชิ้น (นับไบต์คะแนนโบนัส) ของคะแนนและคะแนนสุดท้ายเช่น " LOLCODE (44 - 5 = 39)"
1>วาดในรูปภาพ) และไม่มีnที่ไหนที่ไม่มีวิธีแก้ปัญหาที่เป็นไปได้ วิธีการแก้ปัญหาที่ถูกต้องสำหรับมีn=2 1>2<1<2>