昨晚看了看,感觉还可以,就把这题写出来了,刚才交的的是WA了一次,原因是最后多了个空行。改了下空行出现的位置,AC了。不得不说UVA判的真严。

#include<stdio.h>
char s[10][10];
int  num[10][10];
int main()
{int  r, c, i, j, sign=1;while(scanf("%d", &r)){if(r==0)break;scanf("%d",&c);int count=0;for( i=0; i < r; i++)scanf("%s",s[i]);for( i=0; i<r; i++)for( j=0; j<c; j++){if(i==0&&s[i][j]!='*')num[i][j]=++count;else if((j==0&&s[i][j]!='*')||(s[i][j-1]=='*'&&s[i][j]!='*')||(s[i-1][j]=='*'&&s[i][j]!='*'))num[i][j]=++count;}if(sign!=1)printf("\n");printf("puzzle #%d:\n",sign);printf("Across\n");for( i=0; i<r; i++)for( j=0; j<c; j++){if( s[i][j]!='*'){printf("%3d.",num[i][j]);int n;for( n=j; ; n++){printf("%c",s[i][n]);if(s[i][n+1]=='*'||n==c-1)break;}printf("\n");j=n;}}printf("Down\n");for( i=0; i<r; i++)for( j=0; j<c; j++){int n;if(i==0&&s[i][j]!='*'){printf("%3d.",num[i][j]);for( n=i; ; n++){printf("%c",s[n][j]);if(s[n+1][j]=='*'||n==r-1)break;}printf("\n");}if( s[i][j]!='*'&& s[i-1][j]=='*'&&i!=0){printf("%3d.",num[i][j]);for( n=i; ; n++){printf("%c",s[n][j]);if(s[n+1][j]=='*'||n==r-1)break;}printf("\n");}}sign++;}return 0;
}

UVa 232 - Crossword Answers相关推荐

  1. UVA - 232 ​​​​​​​Crossword Answers

    Crossword Answers UVA - 232 题目传送门 直接按照要求寻找遍历一遍即可 AC代码: #include <cstdio> #include <iostream ...

  2. uva 232 - Crossword Answers(纵横迷宫)

    习题3-6 纵横字谜的答案(Crossword Answers, ACM/ICPC World Finals 1994, UVa232) 输入一个r行c列(1≤r,c≤10)的网格,黑格用" ...

  3. Uva 232.Crossword Answers

    下面的输出一定要是%3d的格式来输出序号 另外注意两个解之间的空格 1 #include <cstdio> 2 #include <cstring> 3 using names ...

  4. uva 232 Crossword Answers

    https://vjudge.net/problem/UVA-232 题意: 输入一个r行c列的网格,黑格用"*"来表示,每个白格都填有一个字母.如果一个白格的左边或者上边的相邻位 ...

  5. 232 Crossword Answers

    我用了一天多的时间来做这个题,从连题都看不懂,到思路混乱,到写出来差不多能运行但是有bug的代码,再到将自己写的一百行代码缩减到五十行,再到算法的逐渐精炼,我不管我能写多少代码,但是我希望我写的代码都 ...

  6. UVA232 纵横字谜的答案 Crossword Answers 题解

    题意翻译 输入一个r 行c 列(1<r,.c<10) 的网格,黑格用"*"每个白格都填有一个字母.如果一个白格的左边相邻位置或者上边相邻位置没有白格(可能是黑格,也可能 ...

  7. 习题3-6 纵横字谜的答案(Crossword Answers, ACM/ICPC World Finals 1994, UVa232)

    原题vjudge 输入一个r行c列(1≤r,c≤10)的网格,黑格用"*"表示,每个白格都填有一个字母. 如 果一个白格的左边相邻位置或者上边相邻位置没有白格(可能是黑格,也可能出 ...

  8. I - Crossword Answers

    题目描述 输入一个r行c列(1<=r,c<=10)的网格,黑格用"*"表示,每个白格都填有一个字母,如果一个白格的左边相邻的位置或者边上相邻的位置没有白格(可能是黑格, ...

  9. UVa232 Crossword Answers(纵横字谜的答案)

    题意: 输入一个r行c列的网格,*表示黑格,字母表示白格.若一个白格位于边界或上方是黑格或左方是黑格,则称其为起始格.找出所有横向单词和竖向单词,其必须从一个起始格开始,到黑格或网格边界为止. 思路: ...

最新文章

  1. GraphicsMagick扩展配置安装
  2. 中国电力行业运行形势及十四五供需状况分析报告2021-2027年
  3. 笨人可以学计算机吗,为什么有的笨人一旦开窍,其人生就像开了挂似的呢?
  4. JavaScript解析Json字符串
  5. 在 Nginx 上支持 HTTP/3
  6. windows下客户端连接上马上会断开连接_Tunneller VS DCOM,稳定性更高的连接!
  7. html css表格样式模板_HTML amp; CSS 基础入门【4】列表及其样式
  8. python 等差数列list_Python3基础 list range+for 等差数列
  9. ubunut 安装 pyqt5
  10. python怎么读取dat文件_小白也能学会系列:用python文件读写代码实例!(简单案例)...
  11. 六、肿瘤RNA突变的全组学研究-肿瘤基因调控(Genomic basis for RNA alterations in cancer)
  12. RAID技术分类介绍
  13. Mixpanel 可视化ABTest分析 —— iOS篇
  14. [GitHub] JavaScript 趋势榜项目(第30周)
  15. 华三(H3C)单臂路由
  16. 优秀的UI设计师应该了解的图标设计规范!
  17. 启动docker时映射到宿主机时出现 /usr/bin/docker-current: Error response from daemon: driver failed……的解决方案
  18. php 模拟微信登录,PHP 模拟登录微信公众平台
  19. 树莓派应用:无线扫描仪
  20. 台式机设置声音快捷键

热门文章

  1. 上海大学2020计算机考研专业,2020上海大学计算机考研大纲
  2. win10启动 蓝屏 0xc000021a 解决方法 不重装
  3. Verilog HDL语法提纲
  4. JS知识资源一站式集锦
  5. 前端分页功能(封装好的组件)
  6. 迟到的总结(四)--springmvc的系统学习之文件上传、ajaxjson处理
  7. Android studio 在线性布局下嵌套相对布局
  8. 蓝牙模块HC05与HC06的连接
  9. 【Kubernetes | Pod 系列】Pod 的基本管理(2)——对 Pod 的查询
  10. 用电脑自己给电波表授时