Pagini recente » Cod sursa (job #2350827) | Cod sursa (job #1959693) | Cod sursa (job #910415) | Cod sursa (job #2224338) | Cod sursa (job #99284)
Cod sursa(job #99284)
#include <fstream.h>
#include <string.h>
#include <stdio.h>
char a[10000000],b[50000][20];
long n;
void citire(){
ifstream fin("abc2.in");
fin.getline(a,10000000);
while (!fin.eof())
fin.getline(b[n++],20);
fin.close();
}
void ordonare(){
for (long i=0;i<n-1;i++)
for (long j=i+1;j<n;j++)
if (strcmp(b[i],b[j])==0)
b[j][0]=0;
}
long da(long k,long i){
for (long j=0;j<strlen(b[i]);j++)
if (a[k+j]!=b[i][j])
return 0;
return 1;
}
long long numarare(){
long long nr=0,lg=strlen(b[0]),lg1=strlen(a);
for (long k=0;k<lg1-lg;k++)
for (long i=0;i<n;i++)
if (b[i][0]!='0')
if (da(k,i)){
nr++;
b[i][0]='0';}
return nr;
}
int main(){
citire();
ordonare();
ofstream fout("abc2.out");
fout<<numarare();
fout<<"\n";
fout.close();
return 0;
}