รหัสในเว็บไซต์นี้กำลังจะหมดลงอย่างรวดเร็ว เราจำเป็นต้องลงทุนในสายการผลิตทดแทน ดังนั้นคุณต้องเขียนโปรแกรมที่ใช้สตริงและแปลงเป็นกังหันลม
ความท้าทาย
ลองมาดูตัวอย่างของกังหันลมแบบง่าย abc
ใช้สตริง เดือยb
เป็นตัวละครที่ศูนย์ในกรณีนี้ เนื่องจากสตริงมีความยาว 3 ตัวอักษรเอาต์พุตทุกตัวจะถูกต้องสามบรรทัดสูงและสามตัวอักษรกว้าง นี่คือผลลัพธ์ของคุณในขั้นตอนที่ 1 (หมายเหตุช่องว่าง)
abc
ในการรับขั้นตอนต่อไปให้หมุนตัวละครแต่ละตัวรอบเดือยตามเข็มนาฬิกา นี่คือขั้นตอนที่ 2:
a ข ค
นี่คือขั้นตอนที่ 3-8:
ข ค
ข ค
CBA
ค ข
ค ข
ค ข
และในขั้นตอนที่เก้ามันจะวนเต็มวงกลมไปยังสตริงเดิม:
abc
โปรดทราบว่าb
อยู่ในจุดเดียวกันตลอดเวลา นี่เป็นเพราะb
เป็นตัวละครสาระสำคัญ คุณต้องเขียนโปรแกรมหรือฟังก์ชั่นที่รับสตริงเป็นอินพุตและพิมพ์ลำดับนี้ซ้ำ ๆ จนกว่าโปรแกรมจะปิด
ชี้แจง
สตริงอินพุตทั้งหมดจะมีอักขระจำนวนคี่ (เพื่อให้กังหันลมทุกอันมีเดือย)
เพื่อให้การท้าทายง่ายขึ้นสตริงทั้งหมดจะมีเฉพาะตัวอักษรตัวพิมพ์ใหญ่และตัวเล็ก
ผลลัพธ์จะต้องเป็น
len(input_string)
อักขระที่กว้างและสูงไม่สำคัญว่าขั้นตอนใดของลำดับที่คุณเริ่มต้นตราบใดที่คุณหมุนวนซ้ำไปเรื่อย ๆ
ทดสอบเพิ่มเติม IO:
เนื่องจากโพสต์ค่อนข้างยาวอยู่แล้วนี่คือลิงก์ไปยังเอาต์พุตสำหรับ "กังหันลม":
sidenote:
เนื่องจากนี่น่าจะเป็นกังหันลมมันจะยอดเยี่ยมถ้าคุณใส่รหัสสำเร็จรูปบางส่วนเพื่อทำให้เคลื่อนไหวด้วยการหน่วงเวลาเล็กน้อยหรืออินพุตผู้ใช้ระหว่างแต่ละขั้นตอน อย่างไรก็ตามเนื่องจากบางภาษาไม่มีเวลาในตัวจึงไม่ได้รับคำสั่ง ส่วนการแข่งขันของการส่งของคุณสามารถพิมพ์ลำดับเร็วที่สุดเท่าที่จะทำได้