อินพุต
ไม่ว่างเปล่าสตริงสับประกอบด้วยอักขระ ASCII ในช่วง ]
เอาท์พุต
เอาต์พุตได้มาจากการใช้การหมุนต่อเนื่องกับสตริงอินพุต
สำหรับแต่ละตัวอักษร ( [a-zA-Z]
) ในสตริงอินพุตให้เปลี่ยนจากซ้ายไปขวา:
- ถ้าตัวอักษรเป็นตัวพิมพ์ใหญ่หมุนตัวอักษรทั้งหมดก่อนโดยตำแหน่งเดียวไปทางซ้าย
- หากตัวอักษรเป็นตัวพิมพ์เล็กให้หมุนตัวอักษรทั้งหมดก่อนโดยตำแหน่งเดียวไปทางขวา
ตัวอย่าง
อินพุต: "Cb-Ad"
- อักษรตัวแรกคือ " C " เราควรหมุนไปทางซ้าย แต่ไม่มีตัวละครอยู่ก่อนหน้านี้ " C " ดังนั้นจึงไม่มีอะไรจะหมุน
- ตัวอักษรถัดไปคือ " b " เราหมุน " C " ไปทางขวา เนื่องจากเป็นอักขระตัวเดียวจึงไม่เปลี่ยนแปลง
- อักขระ " - " ไม่เรียกใช้การหมุนใด ๆ เนื่องจากไม่ใช่ตัวอักษร
- ตัวอักษรถัดไปคือ " A " เราหมุน " Cb- " ไปทางซ้ายซึ่งให้ " โฆษณาbC "
- ตัวอักษรที่สี่และตัวสุดท้ายคือ " d " เราหมุน " b-CA " ไปทางขวาซึ่งให้ " Ab-C d"
ดังนั้นผลลัพธ์ที่คาดหวังคือ " Ab-Cd "
กฎระเบียบ
- คุณอาจป้อนข้อมูลเป็นสตริงหรืออาเรย์ของอักขระซึ่งอาจหรือไม่เหมือนกันขึ้นอยู่กับภาษาของคุณ
- นอกจากนี้คุณยังสามารถส่งออกอาร์เรย์ของตัวละครแทนสตริง
- นี่คือ
ogl-edocfcode-golf
กรณีทดสอบ
"cbad" -> "abcd"
"ACBD" -> "ABCD"
"Cb-Ad" -> "Ab-Cd"
"caeBDF" -> "aBcDeF"
"aEcbDF" -> "abcDEF"
"ogl-edocf" -> "code-golf"
"W o,ollelrHd!" -> "Hello, World!"
"ti HIs SSta ET!" -> "tHis IS a tEST!"
.U
เพื่อลดอินพุตจากค่าที่ 2 สิ่งนี้ช่วยให้คุณลดลง=k
จากจุดเริ่มต้นและ)k
จากจุดสิ้นสุดเนื่องจากทั้งอินพุตและการพิมพ์มีความหมายโดยนัย โปรแกรมเต็มรูปแบบ:.U+.>b-}ZG}Zr1GZ
- ลิงค์