这道题目并不难,就是题意太难以理解了,我读了老长时间才好,,真墨迹。。。
还有要注意当状态为2的时候输出的x为小写的,就在这里WA了一次,晕死了,,,,,
#include<stdio.h>
#include<string.h>
int main()
{int dna[10],s[51][41];int n,i,j,leap;scanf("%d",&n);while(n--){for(i=0;i<10;i++)scanf("%d",&dna[i]);memset(s,0,sizeof(s));s[0][20]=1;for(i=1;i<50;i++)for(j=1;j<41;j++){leap=s[i-1][j-1]+s[i-1][j]+s[i-1][j+1];s[i][j]=dna[leap];}for(i=0;i<50;i++){for(j=1;j<41;j++){if(s[i][j]==0)printf(" ");if(s[i][j]==1)printf(".");if(s[i][j]==2)printf("x");if(s[i][j]==3)printf("W");}printf("\n");}if(n!=0)printf("\n");}return 0;
}