เป้าหมาย
นี่เป็นความท้าทายที่เรียบง่าย เป้าหมายของคุณคือการถอดรหัสสัญญาณสตริงด้วยการสลับตัวอักษรแต่ละตัวด้วยตัวอักษรถัดไปในกรณีเดียวกันโดยไม่เปลี่ยนแปลงตัวอักษรที่ไม่ใช่ตัวอักษร
คำอธิบายทีละขั้นตอน
E
ตัวอักษรตัวแรกเป็น เรามองหาตัวอักษรถัดไปในกรณีที่บน:C
มันเป็นCdoE!
เราสลับตัวอักษรเหล่านี้ซึ่งนำไปสู่เราเลื่อนไปยังตัวอักษรถัดไป:
d
นี่คือ เรามองหาตัวอักษรถัดไปในกรณีที่ต่ำกว่า:o
มันเป็นCodE!
เราสลับตัวอักษรเหล่านี้ซึ่งนำไปสู่เราก้าวไปสู่ตัวละครตัวต่อไป: นี่คือสิ่ง
d
ที่เราเพิ่งย้ายมาที่นี่ เราไม่สนใจเพราะมีการดำเนินการแล้วเราก้าวไปสู่ตัวละครตัวต่อไป: นี่คือสิ่ง
E
ที่ถูกย้ายมาที่นี่ในขั้นตอนที่ 1 เราไม่สนใจเพราะมีการดำเนินการแล้วเราเลื่อนไปยังตัวอักษรถัดไป:
!
นี่คือ เราไม่สนใจมันเพราะมันไม่ใช่ตัวอักษร
กฎระเบียบ
คุณสามารถสันนิษฐานได้ว่าสายป้อนข้อมูลนั้นทำจากอักขระ ASCII ที่พิมพ์ได้เท่านั้นในช่วง 32 - 126
คุณสามารถเขียนโปรแกรมเต็มรูปแบบหรือฟังก์ชั่นที่พิมพ์หรือส่งคืนผลลัพธ์
หากสตริงป้อนเข้ามีจำนวนตัวอักษรคี่ตัวอักษรสุดท้ายที่เหลือจะไม่สามารถสลับกับอีกหนึ่งตัวอักษรและควรอยู่ในสถานที่ไม่ว่าในกรณีใด ตรรกะเดียวกันนี้ใช้ถ้าสตริงมีจำนวนตัวอักษรคู่ แต่จำนวนตัวอักษรตัวพิมพ์ใหญ่และเลขคี่ของตัวอักษรตัวเล็ก
นี่คือรหัสกอล์ฟดังนั้นคำตอบที่สั้นที่สุดในหน่วยไบต์ชนะ ช่องโหว่มาตรฐานเป็นสิ่งต้องห้าม
กรณีทดสอบ
Input : lLEhW OroLd!
Output: hELlO WorLd!
Input : rpGOZmaimgn uplRzse naC DEoO LdGf
Output: prOGRamming puzZles anD COdE GoLf
Input : eIt uqHKC RBWOO xNf ujPMO SzRE HTL EOvd yAg
Output: tHe quICK BROWN fOx juMPS OvER THE LAzy dOg
Input : NraWgCi: Nsas-eNEiTIsev rNsiTG!!
Output: WarNiNg: Case-sENsITive sTriNG!!
กรณีทดสอบแบบไม่สุ่ม:
Input : (^_^)
Output: (^_^)
Input : AWCTY HUOS RETP
Output: WATCH YOUR STEP
Input : hwn oeesd acsp nawyya
Output: who needs caps anyway
Input : SpMycaeIesKyBorekn
Output: MySpaceKeyIsBroken
Input : D's mroyr, Ivam. I'e faardi I act'n od htta.
Output: I'm sorry, Dave. I'm afraid I can't do that.