AT_otemae2019_d.FizzBuzz (FizzBuzz)

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

皮太郎和你在玩快乐的游戏。

皮太郎在1010进制中有NN位正整数,这个数的开头不是00。

皮太郎把这个从上面的位数一位一位地读出来。当你听到皮太郎说数字的时候,都会把皮太郎之前读过的数字按照读过的顺序从上面的位数开始排列的整数作为KK,如果KK是33的倍数而不是55的倍数的话就说Fizz,如果是55的倍数而不是33的倍数的话就说Buzz,如果是1515的倍数的话就说FizzBuzz。如果KK不是33的倍数,也不是55的倍数,你什么都不说。例如,如果皮太郎朗读12 345 67012\,345\,670这个数字,你就会说出Fizz、Fizz、FizzBuzz、Fizz、Buzz这5句话。

你在确认游戏的游戏记录。记录上写着你刚刚说了MM次,并写着第i(1≤i≤M)i(1\le i\le M)次的发言是SiS_i。

编写一个可以求出满足该记录的NN位正整数的可能个数除以100000000007100000000007的余数的程序。

输入格式

以下面的格式输入。

N M S1⋮SMN\,M\,S_1\vdots S_M

输出格式

在标准输出中,11行输出满足条件的正整数个数除以100000000007100000000007的余数。

输入输出样例

  • 输入#1

    3 2
    Buzz
    FizzBuzz

    输出#1

    7
  • 输入#2

    2 2
    Buzz
    FizzBuzz

    输出#2

    0
  • 输入#3

    1 0

    输出#3

    5
  • 输入#4

    10 5
    Fizz
    FizzBuzz
    Fizz
    Buzz
    FizzBuzz

    输出#4

    3232774
  • 输入#5

    2 1
    FizzBuzz

    输出#5

    3

说明/提示

约束条件

  • 1≤N≤1 0001\le N\le1\,000。
  • 0≤M≤N0\le M\le N。
  • Si是Fizz、Buzz、FizzBuzz中的任意一种(1\le i\le M)。

小课题

  1. (1010点)N≤6N\le6。
  2. (22点)N=MN=M,Si(1≤i≤N)Si(1\le i\le N)为FizzBuzz。
  3. (1414点)N=MN=M,Si(1≤i≤N)S_i(1\le i\le N)为Fizz.
  4. (1414点)N=MN=M,Si(1≤i≤N)S_i(1\le i\le N)为Buzz.
  5. (2020点)N=MN=M。
  6. (4040点)无其他限制。

样例解释1

105105,255255,405405,525525,585585,705705,855855满足给定记录。

样例解释5

例如01和07这样的数字不能被视为22位数,所以要注意。

输入解题思路,AI测评打分。不知道怎么写?

首页