232 Crossword Answers
2017-01-22 12:48
155 查看
我用了一天多的时间来做这个题,从连题都看不懂,到思路混乱,到写出来差不多能运行但是有bug的代码,再到将自己写的一百行代码缩减到五十行,再到算法的逐渐精炼,我不管我能写多少代码,但是我希望我写的代码都是精品,又想起那句话,重剑无锋,大巧无工,代码也是如此。
这个题我栽在格式上了,题目要求,在可执行输入后,每个输出之间需要有一个空行,我在第一个输出后直接加了个空行再开始的第二次的输入,这样是错误的,虽然我现在依然感觉并不错。。。但是oj题既然严格就按严格的来写算了
以下是我的代码
这个题我栽在格式上了,题目要求,在可执行输入后,每个输出之间需要有一个空行,我在第一个输出后直接加了个空行再开始的第二次的输入,这样是错误的,虽然我现在依然感觉并不错。。。但是oj题既然严格就按严格的来写算了
以下是我的代码
#include<stdio.h> #include<string.h> main() { int i,n,m,x,y,sum,biaoji[20][20],count=1,diao; char qian[20][20]={0}; while(scanf("%d",&n)&&n!=0) { diao=0; sum=1; memset(biaoji,0,sizeof(biaoji)); scanf("%d",&m); getchar(); gets(qian[0]);if(qian[0][0]=='0')break; for(i=1;i<n;i++) gets(qian[i]); if(count>1)printf("\n"); for(x=0;x<n;x++) for(y=0;y<m;y++) {if(qian[x][y]=='*') {biaoji[x][y]=-1;continue;} if(y==0||x==0){biaoji[x][y]=sum;sum++;} if(x!=0&&y!=0&&(qian[x][y-1]=='*'||qian[x-1][y]=='*')) {biaoji[x][y]=sum;sum++;} } printf("puzzle #%d:\n",count++); printf("Across\n"); for(x=0;x<n;x++) for(y=0;y<m;y++) { if(biaoji[x][y]==-1)continue; if(biaoji[x][y]>=0&&y==0||biaoji[x][y]>=0&&biaoji[x][y-1]==-1)printf("%3d.",biaoji[x][y]); if(biaoji[x][y]>=0&&biaoji[x][y+1]==-1||(biaoji[x][y]>=0&&y==m-1)){printf("%c\n",qian[x][y]);continue;} printf("%c",qian[x][y]); } printf("Down\n"); for(x=0;x<n;x++) for(y=0;y<m;y++) {i=x; if(biaoji[x][y]==-1||biaoji[x][y]==-2)continue; if(biaoji[x][y]>=0) for(;i<n;i++){ if(biaoji[i][y]==-1)break; if(biaoji[i][y]>=0&&i==0||biaoji[i-1][y]==-1&&biaoji[i][y]>=0)printf("%3d.",biaoji[i][y]); if(biaoji[i][y]>=0&&biaoji[i+1][y]==-1||(biaoji[i][y]>=0&&i==n-1)){printf("%c\n",qian[i][y]);biaoji[i][y]=-2;continue;} printf("%c",qian[i][y]);biaoji[i][y]=-2; } } } }
相关文章推荐
- UVA - 232 Crossword Answers
- 【白书之路】 232 - Crossword Answers 字符串单词提取
- UVA - 232 Crossword Answers
- UVA232 UVALive5171 POJ1888 Crossword Answers
- UVa 232 Crossword Answers(枚举+输入输出)
- uva 232 - Crossword Answers
- 232 - Crossword Answers
- Uva 232-crossword answers
- UVA 232 Crossword Answers
- 3.6 Crossword Answers UVa232
- uva 232 - Crossword Answers
- UVa 232 - Crossword Answers【字符串】
- UVa232 Crossword Answers——C++版本
- UVa232 Crossword Answers AC
- 习题3-6 纵横字谜的答案(Crossword Answers, ACM/ICPC World Finals 1994, UVa232)
- Uva - 232 - Crossword Answers
- Uva - 232 - Crossword Answers
- Crossword Answers UVA - 232
- UVa 232 Crossword Answers
- [Crossword Answers UVA - 232 ]