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

    • 282通过
    • 698提交
  • 题目提供者 ProjectWTA
  • 评测方式 云端评测
  • 标签 O2优化 高性能
  • 难度 普及+/提高
  • 时空限制 1000ms / 128MB

题解

  • 提示:收藏到任务计划后,可在首页查看。
  • 最新讨论 显示

    推荐的相关题目 显示

    题目背景

    T1答案要mod1000000007(10^9+7),请重新提交,非常抱歉!

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

    题目描述

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

    pipapi想起了他最近刚刚学会写的Hello World程序。他非常好奇,这篇文章中,“HelloWorld”作为子序列到底出现过多少次呢?

    由于papapi是个智障,大小写对于他而言毫无区别;因此,“hEllOWorLD”这样的子序列也是可以接受的。O和W之间的空格是也是可以少的;也就是说,“HelloWorld”是可以的。根据标程的意思,就是没有空格,不用考虑空格的情况。

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

    由于答案可能很大,请输出结果对1000000007(10^9+7)的余数。

    输入输出格式

    输入格式:

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

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

    输出格式:

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

    输入输出样例

    输入样例#1: 复制
    HhEeLlLlOoWwOoRrLlDd
    输出样例#1: 复制
    1536
    输入样例#2: 复制
    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 
    输出样例#2: 复制
    273

    说明

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

    对于20%的数据,n <= 20。

    对于50%的数据,n <= 500。

    对于所有的数据,15 <= n <= 500000。

    提示
    标程仅供做题后或实在无思路时参考。
    请自觉、自律地使用该功能并请对自己的学习负责。
    如果发现恶意抄袭标程,将按照I类违反进行处理。