Logo HelloWorld信息学奥赛题库

少儿编程

时间限制:1 s 空间限制:256 MB
统计

题目描述

在单词搜寻中,单词隐藏在字母网格中。隐藏单词的字母总是按顺序出现在水平、垂直或对角线线段上。
一种方法是让单词的字母出现在一个线段上。另一种方式是单词的字母出现在一个线段上,直到某个字母,然后出现在第二行在这个字母处形成直角的线段。
给定一个字母网格和一个单词来搜索,你的任务就是确定该特定单词被隐藏在网格中的次数。

输入格式

第一行输入将包含一个由不同大写字母组成的字符串W,表示要在网格中搜索的单词。W的长度至少为2。
第二行输入将是一个整数R(1<=R<=100),其中R是网格中的行数。
第三行输入将是一个整数C(1<=C<=100),其中C是网格中的列数。
剩下的输入将提供网格中的字母。它将由R行组成,其中每行包含由单个空格分隔的C大写字母。

输出格式

输出将由一个非负整数H组成,表示单词在网格中隐藏的次数。

样例数据1

input

MENU 
5
7 
F T R U B L K 
P M N A X C U 
A E R C N E O 
M N E U A R M 
M U N E M N S

output

3

样例1解释

单词MENU在网格中隐藏了三次。如图所示,一次水平,一次垂直,一次对角。
请注意,单个字母可以多次使用。

avatar

样例数据2

input

NATURE 
6
9 
N A T S F E G Q N 
S A I B M R H F A 
C F T J C U C L T 
K B H U P T A N U 
D P R R R J D I R 
I E E K M E G B E

output

4

样例2解释

NATURE这个词在网格中隐藏了四次。一次是对角的,一次是垂直的,两次是在垂直线段上。

avatar

数据说明

avatar