雷顿女士与歌谣
题号:NC200013
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

快到卡特莉的生日了,助手诺亚想为卡特莉献唱一首生日歌。

现在他已经拿到了乐谱,但是还需要你来帮他转调,使得他能顺利地唱好生日歌。

我们认为乐谱中的音符有从低到高以下12种:



给乐谱转调就是把乐谱中的所有音符降低或者升高。

例如我们把将转化为称作升一个半音,把将转化为称作降一个半音。

进一步地,如果我们将继续下降,为了减小你的工作量,你可以认为会得到

同样地,你可以认为升一个半音是

输入描述:

第一行输入一个T(1<=T<=10)表示数据组数。

接下来T组数据。

对于每组数据,第一行输入一个n(1<=n<=100),m(-1000000000<=m<=1000000000)。

分别表示乐谱的音符个数,和你需要转调的次数。

如果m>=0,则表示你需要上升乐谱m次。

如果m<0,则表示你需要下降乐谱-m次。

接下来输入一行,含有n个音符,保证输入的音符是题面中描述的12种之一。

输出描述:

输出一行,表示你转调后乐谱。
请注意行末不要输出多余空格。
示例1

输入

复制
2
12 2
1 #1 2 #2 3 4 #4 5 #5 6 #6 7
12 -1
7 #6 1 #1 2 #2 3 4 #4 5 #5 6

输出

复制
2 #2 3 4 #4 5 #5 6 #6 7 1 #1
#6 6 7 1 #1 2 #2 3 4 #4 5 #5