Cho đầu vào sau:
- Một số nguyên
n
ở đâun > 0
. - Một chuỗi
s
nơis
không phải là trống rỗng vàs~=[0-9A-Z]+
(chỉ thủ đô alpha-numeric).
Sử dụng bàn phím QWERTY tiêu chuẩn, đơn giản hóa (như hiển thị bên dưới):
1234567890
QWERTYUIOP
ASDFGHJKL
ZXCVBNM
Thực hiện các thao tác sau:
- Tìm hàng gốc mà mỗi ký tự nằm trên bàn phím.
- Thay thế chữ cái bằng cách dịch chuyển tương đương chính xác
n
dựa trên vị trí ban đầu của nó + n.- EG
s="AB"
vàn=2
:A
sẽ trở thànhD
vàB
sẽ trở thànhM
.
- EG
- Nếu
keyboard_row[position + n] > keyboard_row.length
, bọc lại để bắt đầu.- EG
s="0P"
vàn=2
:0
sẽ trở thành2
vàP
sẽ trở thànhW
.
- EG
Ví dụ:
f("0PLM",1) = 1QAZ
f("ZXCVB",2) = CVBNM
f("HELLO",3) = LYDDW
f("0PLM",11) = 1QSV
f("0PLM",2130) = 0PHX
Quy tắc
- Đây là môn đánh gôn , đánh số byte thấp nhất.
Điều này hơi khó khăn hơn so với cái nhìn đầu tiên.