CF316G2.Good Substrings

普及/提高-

通过率:0%

AC君温馨提醒

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

题目描述

Smart Beaver recently got interested in a new word game. The point is as follows: count the number of distinct good substrings of some string ss . To determine if a string is good or not the game uses rules. Overall there are nn rules. Each rule is described by a group of three (p,l,r)(p,l,r) , where pp is a string and ll and rr (l<=r)(l<=r) are integers. We’ll say that string tt complies with rule (p,l,r)(p,l,r) , if the number of occurrences of string tt in string pp lies between ll and rr , inclusive. For example, string "ab", complies with rules ("ab", 11 , 22 ) and ("aab", 00 , 11 ), but does not comply with rules ("cd", 11 , 22 ) and ("abab", 00 , 11 ).

A substring s[l... r]s[l...\ r] (1<=l<=r<=s)(1<=l<=r<=|s|) of string s=s1s2... sss=s_{1}s_{2}...\ s_{|s|} ( s|s| is a length of ss ) is string slsl+1... srs_{l}s_{l+1}...\ s_{r} .

Consider a number of occurrences of string tt in string pp as a number of pairs of integers l,rl,r (1<=l<=r<=p)(1<=l<=r<=|p|) such that p[l... r]=tp[l...\ r]=t .

We’ll say that string tt is good if it complies with all nn rules. Smart Beaver asks you to help him to write a program that can calculate the number of distinct good substrings of string ss . Two substrings s[x... y]s[x...\ y] and s[z... w]s[z...\ w] are cosidered to be distinct iff s[x... y]s[z... w]s[x...\ y]≠s[z...\ w] .

输入格式

The first line contains string ss . The second line contains integer nn . Next nn lines contain the rules, one per line. Each of these lines contains a string and two integers pi,li,rip_{i},l_{i},r_{i} , separated by single spaces ( 0<=li<=ri<=pi0<=l_{i}<=r_{i}<=|p_{i}| ). It is guaranteed that all the given strings are non-empty and only contain lowercase English letters.

The input limits for scoring 30 points are (subproblem G1):

  • 0<=n<=100<=n<=10 .
  • The length of string ss and the maximum length of string pp is <=200<=200 .

The input limits for scoring 70 points are (subproblems G1+G2):

  • 0<=n<=100<=n<=10 .
  • The length of string ss and the maximum length of string pp is <=2000<=2000 .

The input limits for scoring 100 points are (subproblems G1+G2+G3):

  • 0<=n<=100<=n<=10 .
  • The length of string ss and the maximum length of string pp is <=50000<=50000 .

输出格式

Print a single integer — the number of good substrings of string ss .

输入输出样例

  • 输入#1

    aaab
    2
    aa 0 0
    aab 1 1
    

    输出#1

    3
    
  • 输入#2

    ltntlnen
    3
    n 0 0
    ttlneenl 1 4
    lelllt 1 1
    

    输出#2

    2
    
  • 输入#3

    a
    0
    

    输出#3

    1
    

说明/提示

There are three good substrings in the first sample test: «aab», «ab» and «b».

In the second test only substrings «e» and «t» are good.

首页