#Z035. 字母移位

字母移位

题目描述

字母移位:表示将字母按照字母表的顺序进行移动。

例如:b 向右移动一位是cf向左移动两位是d

特别地,a向左移动一位是zz向右移动一位是a

给定一个仅包含小写字母且长度为 nn 的字符串 ss,以及 nn 个正整数 a1,a2a3ana_1,a_2,a_3…… a_n,接下来对字符串ss按如下规律操作:

1.将第 1位字符向左移动 a1a_1 位;

2.再将第 1、2 位字符都向右移动 a2a_2位;

3.再将第 1、2、3 位字符都向左移动 a3a_3位;

4.再将第 1、2、3、4 位字符都向右移动 a4a_4位;

以此类推,直到将ss的第11到第nn位字符都(按规律向左或向右)移动ana_n 位。

最后,将操作完成后的字符串ss输出。

例如:n=5n=5,字符串s=s=abcde55 个正整数为 135791,3,5,7,9;

abcde的第 11 位字符"a""a"向左移动 1位,ss 变为zbcde

再将zbcde的前 2 位字符zb 向右移动 3 位,ss变为cecde

再将cecde 的前 3位字符cec向左移动5 位,ss 变为xzxde

再将xzxde 的前 4 位字符xzxd向右移动7 位,ss变为egeke

再将egeke的前 5 位字符egeke 向左移动 9 位,ss 变为vxvbv

最后,将操作完成后的字符串vxvbv输出。

输入格式

第一行输入一个整数n n

第二行输入一个仅包含小写字母且长度为 nn 的字符串s s

第三行输入 nn个整数 a1a2ana_1、a_2 \dots a_n,整数之间以一个空格隔开

输出格式

输出一个字符串,表示操作完成后的字符串ss

5
abcde
1 3 5 7 9
vxvbv

提示

(1n105)(1≤n≤10^5)

(1a109)(1≤a≤10^9)