#Z035. 字母移位

字母移位

题目描述

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

例如:b 向右移动一位是c,f向左移动两位是d。

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

给定一个仅包含小写字母且长度为 nn 的字符串 ss,以及 nn 个正整数 a1,a2,a3……ana_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=abcde,55 个正整数为 1,3,5,7,91,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个整数 a1、a2…ana_1、a_2 \dots a_n,整数之间以一个空格隔开

输出格式

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

5
abcde
1 3 5 7 9
vxvbv

提示

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

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