Borderou de evaluare (job #1910581)

Utilizator ShutterflyFilip A Shutterfly Data 7 martie 2017 17:33:43
Problema Compresie Status done
Runda Arhiva de probleme Compilator cpp | Vezi sursa
Scor 0

Raport evaluator

Eroare de compilare: user.cpp:2:107: error: ISO C++ forbids declaration of ‘Q’ with no type [-fpermissive] std::ofstream g("compresie.out");char s[1000001],a[1001][1001];int n,p,i,j,N,x,h;Q(int x,int y,int X,int Y){if(x>X||y>Y){}else{if(s[p]=='*'){p++;int m=(x+X)/2,M=(y+Y)/2;Q(x,y,m,M);Q(x,M+1,m,Y);m++;Q(m,y,X,M);Q(m,M+1,X,Y);}else{while(isdigit(s[p]))++p;for(i=x-1;i++<=X;)for(j=y-1;j++<=Y;)a[i][j]=s[p];p++;}}}main(){std::ifstream ("compresie.in").getline(s,1e6);for(;s[i];++i)if(s[i]=='*')N++,x=0;else if(isdigit(s[i]))x=10*x+s[i]-'0';else if(x)n+=x,x=0;else n++;g<<N;while(h*h<n)h++;p = 0;Q(1,1,h,h);for(i=0;i++<h;){g<<"\n";for(j=0;j++<h;)g<<a[i][j];}} ^ user.cpp: In function ‘int Q(int, int, int, int)’: user.cpp:2:307: warning: no return statement in function returning non-void [-Wreturn-type] std::ofstream g("compresie.out");char s[1000001],a[1001][1001];int n,p,i,j,N,x,h;Q(int x,int y,int X,int Y){if(x>X||y>Y){}else{if(s[p]=='*'){p++;int m=(x+X)/2,M=(y+Y)/2;Q(x,y,m,M);Q(x,M+1,m,Y);m++;Q(m,y,X,M);Q(m,M+1,X,Y);}else{while(isdigit(s[p]))++p;for(i=x-1;i++<=X;)for(j=y-1;j++<=Y;)a[i][j]=s[p];p++;}}}main(){std::ifstream ("compresie.in").getline(s,1e6);for(;s[i];++i)if(s[i]=='*')N++,x=0;else if(isdigit(s[i]))x=10*x+s[i]-'0';else if(x)n+=x,x=0;else n++;g<<N;while(h*h<n)h++;p = 0;Q(1,1,h,h);for(i=0;i++<h;){g<<"\n";for(j=0;j++<h;)g<<a[i][j];}} ^ user.cpp: At global scope: user.cpp:2:313: warning: ISO C++ forbids declaration of ‘main’ with no type [-Wreturn-type] std::ofstream g("compresie.out");char s[1000001],a[1001][1001];int n,p,i,j,N,x,h;Q(int x,int y,int X,int Y){if(x>X||y>Y){}else{if(s[p]=='*'){p++;int m=(x+X)/2,M=(y+Y)/2;Q(x,y,m,M);Q(x,M+1,m,Y);m++;Q(m,y,X,M);Q(m,M+1,X,Y);}else{while(isdigit(s[p]))++p;for(i=x-1;i++<=X;)for(j=y-1;j++<=Y;)a[i][j]=s[p];p++;}}}main(){std::ifstream ("compresie.in").getline(s,1e6);for(;s[i];++i)if(s[i]=='*')N++,x=0;else if(isdigit(s[i]))x=10*x+s[i]-'0';else if(x)n+=x,x=0;else n++;g<<N;while(h*h<n)h++;p = 0;Q(1,1,h,h);for(i=0;i++<h;){g<<"\n";for(j=0;j++<h;)g<<a[i][j];}} ^

Ceva nu functioneaza?