UVA 232 Crossword Answers
来源:互联网 发布:计算面积的软件 编辑:程序博客网 时间:2024/06/16 19:27
题目描述
链接:https://odzkskevi.qnssl.com/963433dd82c52cf702fde21457b672c9?v=1508485620
题意,讲道理,我到现在也没看懂这一片英文,很尴尬,就在猜,隐约看到了从左往右,从上往下,以*或者到边界了,就算分割开,然后再猜他那个每一个字符串的标号怎么来的,竟然还有一样的,观察发现,如果在ij为起始点,那么如果横竖都有符合条件的他俩的标号都是一样的
My ugly code
#include <cstdio>#include <cmath>#include <iostream>#include <cstring>#include <string>#include <algorithm>#include <map>using namespace std;int r,c;char a[15][15];int b[15][15];int cas=1;int main(){ while(~scanf("%d",&r) && r){ scanf("%d",&c); map<int,string> acr; map<int,string> dow; for(int i=1;i<=r;i++){ scanf("%s",a[i]+1); } memset(b,0,sizeof(b)); for(int i=1;i<=r;i++){ for(int j=1;j<=c;j++){ if(a[i][j]=='*'){ b[i][j]=-1; } } } int cnt=1; for(int i=1;i<=r;i++){ for(int j=1;j<=c;j++){ if(b[i][j]==-1) continue ; int flag=0; if(j-1 == 0 || b[i][j-1]==-1){ int k=j; string s1=""; flag=1; while(b[i][k]!=-1 && k <= c){ s1+=a[i][k++]; } s1+='\0'; acr[cnt]=s1; } if(i-1 == 0 || b[i-1][j]==-1){ int k=i; string s1=""; flag=1; while(b[k][j]!=-1 && k <= r){ s1+=a[k++][j]; } s1+='\0'; dow[cnt]=s1; } if(flag) cnt++; } } if(cas > 1) printf("\n"); printf("puzzle #%d:\n",cas++); printf("Across\n"); //printf("%d\n",acr.size()); map<int,string>::iterator itor; for(itor=acr.begin();itor!=acr.end();itor++){ int ans1; string ans2; ans1=itor->first; ans2=itor->second; printf("%3d.%s\n",ans1,ans2.c_str()); } printf("Down\n"); map<int,string>::iterator itor1; for(itor1=dow.begin();itor1!=dow.end();itor1++){ int ans1=itor1->first; string ans2=itor1->second; printf("%3d.%s\n",ans1,ans2.c_str()); } } return 0;}
阅读全文
0 0
- uva 232 - Crossword Answers
- uva 232 - Crossword Answers
- UVa 232 - Crossword Answers
- UVa 232 - Crossword Answers
- UVa-232 - Crossword Answers
- Uva-232 - Crossword Answers
- uva---232--- Crossword Answers
- UVa 232 Crossword Answers
- UVa 232 - Crossword Answers
- UVa-232Crossword Answers
- 【Uva 232】 Crossword Answers
- UVa 232 Crossword Answers
- UVa 232 Crossword Answers
- UVA - 232 Crossword Answers
- Uva - 232 - Crossword Answers
- UVa 232 - Crossword Answers
- Uva 232 Crossword Answers
- UVA 232 Crossword Answers
- Javascript 面向对象编程(一):封装
- 机器学习算法应用场景
- 转载--详谈JavaScript 匿名函数及闭包
- 第2章 从Node开始
- 小朋友学C语言(18):二进制
- UVA 232 Crossword Answers
- 1_TinyOS的基本介绍
- SIFT算法
- 基于javaweb开发的小区门户网站
- HashMap和HashTable
- 98. Validate Binary Search Tree
- 小朋友学C语言(19):字符和整数的关系
- Java线程池 ExecutorService
- HTML简介