Cod sursa(job #98290)

Utilizator DranaXumAlexandru Dumitru Paunoiu DranaXum Data 10 noiembrie 2007 12:10:59
Problema Abc2 Scor 0
Compilator cpp Status done
Runda Happy Coding 2007 Marime 0.98 kb
#include<stdio.h>
#include<string.h>

int i,j,u;
char p[10000001];
char d[50001][21];
int main()
{
    FILE *fin,*fout;
    fin=freopen("abc2.in","r",stdin);
    fout=freopen("abc2.out","w",stdout);
    scanf("%s\n",p);
    int ok,cv=0;
    while(!feof(fin))
    {
        cv++;
        scanf("%s\n",d[cv]);
        ok=1;
        for(i=0;i<strlen(p)-strlen(d[cv])+1;i++)
        {
            if(ok<2){
                ok=1;
                if(p[i]==d[cv][0] && p[strlen(d[cv])+i-1]==d[cv][strlen(d[cv])-1])
                {   
                    for(j=1;j<strlen(d[cv])-1 && ok;j++)
                    {
                        if(d[cv][j]!=p[i+j]) ok=0;
                    }
                    if(ok) ok=2;
                }
                else ok=0;
            }
            if(i<cv)
                if(strcmp(d[cv],d[i])==0) {ok=0;break;}
        }
        if(ok==2) {u++;}
    }
    printf("%d",u);
    fclose(fin);
    fclose(fout);
    return 0;
}