Borderou de evaluare (job #1509061)

Utilizator mihail.jianuJianu Mihail mihail.jianu Data 23 octombrie 2015 14:27:16
Problema Aho-Corasick Status done
Runda Arhiva educationala Compilator cpp | Vezi sursa
Scor 100

Raport evaluator

Compilare: user.cpp: In function ‘void A(N*)’: user.cpp:3:219: warning: array subscript has type ‘char’ [-Wchar-subscripts] struct N{int a;N *l[26],*x;N(){memset(this,0,sizeof(N)),memset(l,0,26);}};int i,n,j,p,u;char e[1000001],a[10001],*k;N *c[100000001],*s,*r=new N(),*cn,*b[100],*t;void A(N *r){if(!(*k)){b[j]=r;return;}*k-='a';if(!r->l[*k])r->l[*k]=new N();A(r->l[*k++]);}int main(){freopen("ahocorasick.in","r",stdin),freopen("ahocorasick.out","w",stdout);gets(e),scanf("%d\n",&n);for(j=0;j<n;j++)gets(a),k=a,A(r);r->x=c[u++]=r;while(p<u){t=c[p++];for(i=0;i<26;i++)if(t->l[i]){s=t->x;while(s!=r&&!s->l[i])s=s->x;if(s->l[i]&&s->l[i]!=t->l[i])t->l[i]->x=s->l[i];else t->l[i]->x=r;c[u++]=t->l[i];}}for(cn=r,i=0;e[i];i++){while(!cn->l[e[i]-'a']&&cn!=r)cn=cn->x;if(cn->l[e[i]-'a'])cn=cn->l[e[i]-'a'];cn->a++;}for(i=u-1;i>=0;i--)c[i]->x->a+=c[i]->a;for(i=0;i<n;i++)printf("%d\n",b[i]->a);return 0;} ^ user.cpp:3:228: warning: array subscript has type ‘char’ [-Wchar-subscripts] struct N{int a;N *l[26],*x;N(){memset(this,0,sizeof(N)),memset(l,0,26);}};int i,n,j,p,u;char e[1000001],a[10001],*k;N *c[100000001],*s,*r=new N(),*cn,*b[100],*t;void A(N *r){if(!(*k)){b[j]=r;return;}*k-='a';if(!r->l[*k])r->l[*k]=new N();A(r->l[*k++]);}int main(){freopen("ahocorasick.in","r",stdin),freopen("ahocorasick.out","w",stdout);gets(e),scanf("%d\n",&n);for(j=0;j<n;j++)gets(a),k=a,A(r);r->x=c[u++]=r;while(p<u){t=c[p++];for(i=0;i<26;i++)if(t->l[i]){s=t->x;while(s!=r&&!s->l[i])s=s->x;if(s->l[i]&&s->l[i]!=t->l[i])t->l[i]->x=s->l[i];else t->l[i]->x=r;c[u++]=t->l[i];}}for(cn=r,i=0;e[i];i++){while(!cn->l[e[i]-'a']&&cn!=r)cn=cn->x;if(cn->l[e[i]-'a'])cn=cn->l[e[i]-'a'];cn->a++;}for(i=u-1;i>=0;i--)c[i]->x->a+=c[i]->a;for(i=0;i<n;i++)printf("%d\n",b[i]->a);return 0;} ^ user.cpp:3:249: warning: array subscript has type ‘char’ [-Wchar-subscripts] struct N{int a;N *l[26],*x;N(){memset(this,0,sizeof(N)),memset(l,0,26);}};int i,n,j,p,u;char e[1000001],a[10001],*k;N *c[100000001],*s,*r=new N(),*cn,*b[100],*t;void A(N *r){if(!(*k)){b[j]=r;return;}*k-='a';if(!r->l[*k])r->l[*k]=new N();A(r->l[*k++]);}int main(){freopen("ahocorasick.in","r",stdin),freopen("ahocorasick.out","w",stdout);gets(e),scanf("%d\n",&n);for(j=0;j<n;j++)gets(a),k=a,A(r);r->x=c[u++]=r;while(p<u){t=c[p++];for(i=0;i<26;i++)if(t->l[i]){s=t->x;while(s!=r&&!s->l[i])s=s->x;if(s->l[i]&&s->l[i]!=t->l[i])t->l[i]->x=s->l[i];else t->l[i]->x=r;c[u++]=t->l[i];}}for(cn=r,i=0;e[i];i++){while(!cn->l[e[i]-'a']&&cn!=r)cn=cn->x;if(cn->l[e[i]-'a'])cn=cn->l[e[i]-'a'];cn->a++;}for(i=u-1;i>=0;i--)c[i]->x->a+=c[i]->a;for(i=0;i<n;i++)printf("%d\n",b[i]->a);return 0;} ^ user.cpp: In function ‘int main()’: user.cpp:3:337: warning: ignoring return value of ‘FILE* freopen(const char*, const char*, FILE*)’, declared with attribute warn_unused_result [-Wunused-result] struct N{int a;N *l[26],*x;N(){memset(this,0,sizeof(N)),memset(l,0,26);}};int i,n,j,p,u;char e[1000001],a[10001],*k;N *c[100000001],*s,*r=new N(),*cn,*b[100],*t;void A(N *r){if(!(*k)){b[j]=r;return;}*k-='a';if(!r->l[*k])r->l[*k]=new N();A(r->l[*k++]);}int main(){freopen("ahocorasick.in","r",stdin),freopen("ahocorasick.out","w",stdout);gets(e),scanf("%d\n",&n);for(j=0;j<n;j++)gets(a),k=a,A(r);r->x=c[u++]=r;while(p<u){t=c[p++];for(i=0;i<26;i++)if(t->l[i]){s=t->x;while(s!=r&&!s->l[i])s=s->x;if(s->l[i]&&s->l[i]!=t->l[i])t->l[i]->x=s->l[i];else t->l[i]->x=r;c[u++]=t->l[i];}}for(cn=r,i=0;e[i];i++){while(!cn->l[e[i]-'a']&&cn!=r)cn=cn->x;if(cn->l[e[i]-'a'])cn=cn->l[e[i]-'a'];cn->a++;}for(i=u-1;i>=0;i--)c[i]->x->a+=c[i]->a;for(i=0;i<n;i++)printf("%d\n",b[i]->a);return 0;} ^ user.cpp:3:337: warning: ignoring return value of ‘FILE* freopen(const char*, const char*, FILE*)’, declared with attribute warn_unused_result [-Wunused-result] user.cpp:3:362: warning: ignoring return value of ‘char* gets(char*)’, declared with attribute warn_unused_result [-Wunused-result] struct N{int a;N *l[26],*x;N(){memset(this,0,sizeof(N)),memset(l,0,26);}};int i,n,j,p,u;char e[1000001],a[10001],*k;N *c[100000001],*s,*r=new N(),*cn,*b[100],*t;void A(N *r){if(!(*k)){b[j]=r;return;}*k-='a';if(!r->l[*k])r->l[*k]=new N();A(r->l[*k++]);}int main(){freopen("ahocorasick.in","r",stdin),freopen("ahocorasick.out","w",stdout);gets(e),scanf("%d\n",&n);for(j=0;j<n;j++)gets(a),k=a,A(r);r->x=c[u++]=r;while(p<u){t=c[p++];for(i=0;i<26;i++)if(t->l[i]){s=t->x;while(s!=r&&!s->l[i])s=s->x;if(s->l[i]&&s->l[i]!=t->l[i])t->l[i]->x=s->l[i];else t->l[i]->x=r;c[u++]=t->l[i];}}for(cn=r,i=0;e[i];i++){while(!cn->l[e[i]-'a']&&cn!=r)cn=cn->x;if(cn->l[e[i]-'a'])cn=cn->l[e[i]-'a'];cn->a++;}for(i=u-1;i>=0;i--)c[i]->x->a+=c[i]->a;for(i=0;i<n;i++)printf("%d\n",b[i]->a);return 0;} ^ user.cpp:3:362: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result] user.cpp:3:395: warning: ignoring return value of ‘char* gets(char*)’, declared with attribute warn_unused_result [-Wunused-result] struct N{int a;N *l[26],*x;N(){memset(this,0,sizeof(N)),memset(l,0,26);}};int i,n,j,p,u;char e[1000001],a[10001],*k;N *c[100000001],*s,*r=new N(),*cn,*b[100],*t;void A(N *r){if(!(*k)){b[j]=r;return;}*k-='a';if(!r->l[*k])r->l[*k]=new N();A(r->l[*k++]);}int main(){freopen("ahocorasick.in","r",stdin),freopen("ahocorasick.out","w",stdout);gets(e),scanf("%d\n",&n);for(j=0;j<n;j++)gets(a),k=a,A(r);r->x=c[u++]=r;while(p<u){t=c[p++];for(i=0;i<26;i++)if(t->l[i]){s=t->x;while(s!=r&&!s->l[i])s=s->x;if(s->l[i]&&s->l[i]!=t->l[i])t->l[i]->x=s->l[i];else t->l[i]->x=r;c[u++]=t->l[i];}}for(cn=r,i=0;e[i];i++){while(!cn->l[e[i]-'a']&&cn!=r)cn=cn->x;if(cn->l[e[i]-'a'])cn=cn->l[e[i]-'a'];cn->a++;}for(i=u-1;i>=0;i--)c[i]->x->a+=c[i]->a;for(i=0;i<n;i++)printf("%d\n",b[i]->a);return 0;} ^ /tmp/ccTpNbwN.o: In function `main': user.cpp:(.text.startup+0x56): warning: the `gets' function is dangerous and should not be used.
Test Timp executie Memorie folosita Mesaj Punctaj/test
10ms280kbOK5
20ms280kbOK5
30ms280kbOK5
40ms280kbOK5
50ms280kbOK5
64ms864kbOK5
712ms1196kbOK5
812ms1540kbOK5
912ms1676kbOK5
1012ms1372kbOK5
1112ms1196kbOK5
1212ms1500kbOK5
134ms740kbOK5
144ms844kbOK5
158ms1096kbOK5
168ms1152kbOK5
178ms1184kbOK5
188ms1224kbOK5
1912ms1616kbOK5
2032ms2464kbOK5
Punctaj total100

Ceva nu functioneaza?