F.A.Q
Hand In Hand
Online Acmers
Problem Archive
Realtime Judge Status
Authors Ranklist
 
     C/C++/Java Exams     
ACM Steps
Go to Job
Contest LiveCast
ICPC@China
Best Coder beta
VIP | STD Contests
    DIY | Web-DIY beta
Author ID 
Password 
 Register new ID

Lyndon Substring

Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 65535/65535 K (Java/Others)
Total Submission(s): 224    Accepted Submission(s): 19


Problem Description
A string $w$ is said to be a Lyndon word if $w$ is lexicographically smaller than any of its cyclic rotations.
The longest Lyndon substring of a string $s$ is the longest substring of $s$ which is a Lyndon word.
Chiaki has $n$ strings $s_1,s_2,\dots,s_n$. She has some queries: for some pair $(i,j)$, find the length of the longest Lyndon substring of string $s_is_j$.
 

Input
There are multiple test cases. The first line of input contains an integer $T$, indicating the number of test cases. For each test case:
The first line contains two integers $n$ and $m$ $(1 \le n, m \le 10^5)$ -- the number of strings and the number of queries.
Each of the next $n$ lines contains a nonempty string $s_i$ $(1 \le s_i \le 10^5)$ consisting of lowercase English letters.
Each of the next $m$ lines contains two integers $i$ and $j$ ($1 \le i, j \le n$) denoting a query.
It is guaranteed that in one test case the sum of all $|s|$ does not exceed $5 \times 10^5$ and that in all cases the sum of all $|s|$ does not exceed $5 \times 10^6$.
It is guaranteed that neither the sum of all $n$ nor the sum of all $m$ exceeds $10^6$.
 

Output
For each query, output an integer denoting the answer.
 

Sample Input
1 2 1 aa bb 1 2
 

Sample Output
4
 

Source
 

Statistic | Submit | Discuss | Note
Hangzhou Dianzi University Online Judge 3.0
Copyright © 2005-2024 HDU ACM Team. All Rights Reserved.
Designer & Developer : Wang Rongtao LinLe GaoJie GanLu
Total 0.000000(s) query 1, Server time : 2024-04-25 20:27:31, Gzip enabled