แทนที่สตริงด้วยตัวเอง
เป้าหมายของคุณคือการแทนที่สตริงด้วยตัวเองโดยแทนที่อักขระแต่ละตัวในสตริงเดิมด้วยอักขระที่อยู่ข้างหน้าเริ่มต้นด้วยอักขระตัวแรกและล้อมรอบ นี่คือตัวอย่างบางส่วนเพื่อแสดงสิ่งที่ฉันหมายถึง:
ตัวอย่างที่ 1:
Input: program
Output: apgopra
How:
Program -> mrogram (replace p by m in program)
-> mpogpam (replace r by p in mrogram)
-> mprgpam (replace o by r in mpogpam)
-> mpropam (replace g by o in mprgpam)
-> mpgopam (replace r by g in mpropam)
-> mpgoprm (replace a by r in mpgopam)
-> apgopra (replace m by a in mpgoprm)
ตัวอย่างที่ 2:
Input: robot
Output: orbro
How:
Robot -> tobot (replace r by t in robot)
-> trbrt (replace o by r in tobot)
-> trort (replace b by o in trbrt)
-> trbrt (replace o by b in trort)
-> orbro (replace t by o in trbrt)
ตัวอย่างที่ 3:
Input: x
Output: x
How:
x -> x (replace x by x in x)
ตัวอย่างที่ 4:
Input: xy
Output: xx
How:
xy -> yy (replace x by y in xy)
-> xx (replace y by x in yy)
Sidenotes:
- สตริง
x
จะมีตัวอักษรผสมตัวเลขและช่องว่างเล็ก ๆ เท่านั้น - นี่คือcode-golfดังนั้นรหัสที่สั้นที่สุดในหน่วยไบต์ชนะ!