栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

zoj 2989 Encoding

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

zoj 2989 Encoding

#include<stdio.h>#include<stdlib.h>#include<string.h>   int vis[500][500];int a[500][500];int main(){char Gra[30][6]={"00000","00001","00010","00011","00100","00101","00110","00111","01000","01001","01010","01011","01100","01101","01110","01111",   "10000","10001","10010","10011","10100","10101","10110","10111",   "11000","11001","11010"};    int T,c,r;   char ch1[200];   int ch2[500];   int ttt=1;   int i,j;   scanf("%d",&T);   while(T--)   {   memset(vis,0,sizeof(vis));   scanf("%d%d",&r,&c);   getchar();   gets(ch1);   int len=strlen(ch1);   int cas=0;   for (i=0;i<len;i++)   for (j=0;j<5;j++)   {   if(ch1[i]==' ')  ch2[cas++]=Gra[0][j]-'0';   else  ch2[cas++]=Gra[ch1[i]-'A'+1][j]-'0';   }   for (int k=len*5;k<r*c;k++)   ch2[cas++]=0;   int t=1;   int x=0,y=0;   len=r*c;a[0][0]=ch2[0];   vis[0][0]=1;   while(t<len)   {      while( y+1<c && !vis[x][y+1])   {  vis[x][++y]=1;  a[x][y]=ch2[t++];  }  while( x+1<r && !vis[x+1][y])  {  vis[++x][y]=1;  a[x][y]=ch2[t++];  }  while( y-1>=0 && !vis[x][y-1])   {      vis[x][--y]=1;  a[x][y]=ch2[t++];  }  while( x-1>=0 && !vis[x-1][y])   {       vis[--x][y]=1;  a[x][y]=ch2[t++];  }   }   printf("%d ",ttt++);   for (i=0;i<r;i++)   for (j=0;j<c;j++)   printf("%d",a[i][j]);          printf("n");   }   return 0;}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/368528.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号