luogu#P2246. SAC#1 - Hello World(升级版)

SAC#1 - Hello World(升级版)

题目背景

一天,智障的 pipapi 正在看某辣鸡讲义学程序设计。

题目描述

在讲义的某一面,他看见了一篇文章。这篇文章由英文字母(大小写均有)、数字、和空白字符(制表/空格/回车)构成。

pipapi 想起了他最近刚刚学会写的 Hello World 程序。他非常好奇,这篇文章中,Hello World 作为子序列到底出现过多少次呢?(忽略大小写和空格

两个子序列相同当且仅当它们每一个字符所在的位置都相同。

由于答案可能很大,请输出答案对 109+7{10}^9+7 取模的余数。

输入格式

输入包含若干行,这些行的内容共同构成一篇文章。

文章以 EOF(文件结尾)结束。

输出格式

输出仅包含一个整数,表示这篇文章中 Hello World 出现的次数。

HhEeLlLlOoWwOoRrLlDd
1536
Gou Li Guo Jia Sheng Si Yi
Qi Yin Huo Fu Bi Qu Zhi
River can feed people
Also can race boats
Hall Ellen Ok Words locked 
273

提示

nn 为输入的文章的长度(字符数)。

对于 20%20\% 的数据,n20n \le 20

对于 50%50\% 的数据,n500n \le 500

对于所有的数据,15n50000015 \le n \le 500000