模拟题,注意细节。。
#include <iostream>
#include<stdio.h>
#include<math.h>
#include<string.h>
#include<algorithm>
#include<stdlib.h>
#define mod 1073741824
using namespace std; char a[];
char res[];
int op[]; int main()
{
int t,n,i,k;
scanf("%d",&t);
int cs;
int now;
while(t--)
{
memset(op,,sizeof(op));
memset(a,,sizeof(a));
memset(res,,sizeof(res));
scanf("%d",&cs);
getchar();
gets(a); //scanf("%s",a); scanf("%d",&n);
for(i=;i<n;i++)
scanf("%d",&op[i]);
k=;
int len=strlen(a);
now=op[];
if(now<)
now+=len;
else if(now>=len)
now%=len;
res[k++]=a[now]; for(i=;i<n;i++) //op
{
now+=op[i];
if(now>=len)
now%=len;
if(now<)
now+=len;
res[k++]=a[now];
}
printf("%d %s\n",cs,res);
}
return ;
}