UVALive 6181
模拟题,注意细节。。
#include <iostream> #include<stdio.h> #include<math.h> #include<string.h> #include<algorithm> #include<stdlib.h> #define mod 1073741824 using namespace std; char a[100]; char res[1005]; int op[512]; int main() { int t,n,i,k; scanf("%d",&t); int cs; int now; while(t--) { memset(op,0,sizeof(op)); memset(a,0,sizeof(a)); memset(res,0,sizeof(res)); scanf("%d",&cs); getchar(); gets(a); //scanf("%s",a); scanf("%d",&n); for(i=0;i<n;i++) scanf("%d",&op[i]); k=0; int len=strlen(a); now=op[0]; if(now<0) now+=len; else if(now>=len) now%=len; res[k++]=a[now]; for(i=1;i<n;i++) //op { now+=op[i]; if(now>=len) now%=len; if(now<0) now+=len; res[k++]=a[now]; } printf("%d %s\n",cs,res); } return 0; }
作者:whatbeg
出处1:http://whatbeg.com/
出处2:http://www.cnblogs.com/whatbeg/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
更多精彩文章抢先看?详见我的独立博客: whatbeg.com