Pagini recente » Cod sursa (job #2920125) | Cod sursa (job #1317483) | Cod sursa (job #2473914) | Cod sursa (job #10219) | Cod sursa (job #2099486)
#include<iostream>
#include<fstream>
#include<map>
#include<cstring>
using namespace std;
ifstream in("abc2.in");
ofstream out("abc2.out");
const int N = 100002;
const int M = 50002;
int n,m;
int main()
{
map<string, int> fcv;
char sir[N], cuv[M];
in.getline(sir, N);
m = 0;
while(in.getline(cuv, M))
{
fcv[cuv] = 1;
if(!m)
m = strlen(cuv);
}
n = strlen(sir);
///cout<<sir<<"\n\n";
int sol = 0;
for(int i=m-1; i<n; ++i){
char aux = sir[i+1];
sir[i+1] = 0;
sol += fcv[sir + i - m + 1];
///cout<<fcv[sir + i - m + 1]<<" ";
///cout<<"sol = "<<sol<<"\n";
sir[i - m + 1] = 0;
sir[i+1] = aux;
}
out<<sol;
return 0;
}