Pagini recente » Cod sursa (job #2177356) | Cod sursa (job #3030893) | Cod sursa (job #389829) | Cod sursa (job #1405755) | Cod sursa (job #2327071)
#include <fstream>
#include <algorithm>
#include <cstring>
using namespace std;
ifstream in("substr.in");
ofstream out("substr.out");
int n,k,r,maxi;
char s[16301],*f[16301],*a,*b;
bool cmp(char *a,char *b)
{ if(strcmp(a,b)<0)
return 1;
return 0;
}
int main()
{ in>>n>>k>>s;
for(int i=0;i<n;i++)
f[i]=s+i;
sort(f,f+n,cmp);
for(int i=0;i<=n-k;i++)
{ char *a,*b;
a=f[i];
b=f[i+k-1];
r=0;
while(*a==*b && strlen(a)>0 && strlen(b)>0)
r++,a++,b++;
maxi=max(maxi,r);
}
out<<maxi;
in.close();
out.close();
return 0;
}