Pagini recente » Cod sursa (job #3155500) | Cod sursa (job #3175461) | Cod sursa (job #2964609) | Cod sursa (job #3242491) | Cod sursa (job #756242)
Cod sursa(job #756242)
# include <algorithm>
# include <cstdio>
# include <cstring>
bool comp (char *a, char *b) {
return strcmp (a, b) < 0;
}
const char *FIN = "substr.in", *FOU = "substr.out";
const int MAX = 16385;
char T[MAX], *it[MAX];
int N, K, sol;
int main (void) {
fscanf (fopen (FIN, "r"), "%d %d %s", &N, &K, T);
for (int i = 0; i < N; ++i)
it[i] = T + i;
std :: sort (it, it + N, comp);
for (int i = 0; i < N - K + 1; ++i) {
int maxi = 0;
for (char *a = it[i], *b = it[i + K - 1]; *a == *b && *a && *b; ++maxi, ++a, ++b);
sol = std :: max (sol, maxi);
}
fprintf (fopen (FOU, "w"), "%d", sol);
}