Time Limit: 5000MS | | Memory Limit: 65536K |
Total Submissions: 13127 | | Accepted: 5842 |
Case Time Limit: 2000MS |
Description
Farmer John has noticed that the quality of milk given by his cows varies from day to day. On further investigation, he discovered that although he can't predict the quality of milk from one day to the next, there are some regular patterns in the daily milk quality.
To perform a rigorous study, he has invented a complex classification scheme by which each milk sample is recorded as an integer between 0 and 1,000,000 inclusive, and has recorded data from a single cow over N (1 ≤ N ≤ 20,000) days. He wishes to find the longest pattern of samples which repeats identically at least K (2 ≤ K ≤ N) times. This may include overlapping patterns -- 1 2 3 2 3 2 3 1 repeats 2 3 2 3 twice, for example.
Help Farmer John by finding the longest repeating subsequence in the sequence of samples. It is guaranteed that at least one subsequence is repeated at least K times.
Input
Line 1: Two space-separated integers:
N and
K Lines 2..
N+1:
N integers, one per line, the quality of the milk on day
i appears on the
ith line.
Output
Line 1: One integer, the length of the longest pattern which occurs at least
K times
/*POJ 3261 可重叠k次最长重复子串给你一串数字,求其中出现k次的最长子串最开始想的是二分最长长度,然后判断一下是否有k个子串但是在判断的时候2b了,并没有判断它们是否是同一个子串,于是乎应该进行分组讨论,因为是height中存的是排过序后的最长前缀假设height[] = 0 0 1 4 4 4 3 2 4 4只有前3个4是同一个子串(排序后一段连续子串是相似的)所以成了找出height连续大于等于mid的长度sum,判断sum+1是否>=khhh-2016-03-11 21:29:00*/#include #include #include #include #include #include