题意:给你一个网格,黑格用*表示,白格用字母表示。如果一个白格的左边相邻的位置或者上面相邻的位置没有白格(黑格,或是边界),则称它为起始格。
开一个二维标记数组,从上到下,从左往右,两层循环,如果满足以上条件,标记是第几个起始格。
然后寻找单词,从一个起始格开始,往右或者往下,直到边界或者黑格停止,输出字符串及其起始格编号。
首先寻找横向单词,遍历标记数组,如果该字符为起始格,并且左边为黑格或边界,则输出直到右边为边界或黑格为止~~~~
竖向单词,参考横向单词,不解释。。。。
注意输出格式,PE了3次;所有的成功案例后加一个换行,改为除了第一个案例,每一个案例前面加一个换行。
唉
#include <bits/stdc++.h>
#define ll long long
#define maxn 15
using namespace std;
char ch[maxn][maxn];
int f[maxn][maxn]