Pagini: [1]   În jos
  Imprimă  
Ajutor Subiect: MinGW Error !!  (Citit de 1084 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
svlad
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 1



Vezi Profilul
« : Martie 18, 2012, 22:34:05 »

Buna seara. Am facut o sursa pentru problema http://infoarena.ro/problema/iepuras , dupa ce compileaza, imi da return code -124721942(un numar mare) si iepuras.exe has stopped working.... Am citit pe internet si am inteles ca ar insemna Runtime Error. Insa nu inteleg ce poate sa aiba. Am trimis sursa pe infoarena si iau 55 puncte, la testele la care nu iau OK imi da Wrong Answer: http://infoarena.ro/job_detail/716379

Cod:
#include <fstream>
using namespace std;
typedef struct{int x,y;} PUNCT;
PUNCT v[51],w[41];
int m[203][203],c[203][203];
int main()
{
ifstream f("iepuras.in");
ofstream g("iepuras.out");
int N,M,i,j,u,pasi,mv,ss,p1,p2,t,mvc,OK,OK2;
f>>N; f>>M;
f>>p1; f>>p2; f>>ss; mv=0;
for(i=1;i<=N;i++)
{ for(j=1;j<=M;j++)
{ f>>m[i][j];
if(m[i][j]==8) {v[++u].x=i; v[u].y=j;}
if(m[i][j]==7) mv++;
}
}
f>>t; mvc=0;
for(i=1;i<=t;i++)
{ f>>w[i].x; f>>w[i].y;}
OK=1; OK2=1;
pasi=0;
while(p1>=1&&p1<=N&&p2>=1&&p2<=M)
{ if(ss==1) {p1--;}
if(ss==2) {p2--;}
if(ss==3) {p1++;}
if(ss==4) {p2++;}
if(p1==0||p1==N+1||p2==0||p2==M+1)
{
if(p1==0) p1++;
if(p1==N+1) p1--;
if(p2==0) p2++;
if(p2==M+1) p2--;
OK=3; break;
}
pasi++;
if(m[p1][p2]==6) {OK=1; break;}
if(m[p1][p2]==7) { mvc++; m[p1][p2]=0; if(mvc==mv) {OK=2; break;}
}
if(m[p1][p2]==8) { if(ss==1) ss=3;
   if(ss==2) ss=4;
   if(ss==3) ss=1;
   if(ss==4) ss=2;
}
if(m[p1][p2]==5) { if(ss==1) ss=3;
   if(ss==2) ss=4;
   if(ss==3) ss=1;
   if(ss==4) ss=2;
}
if(m[p1][p2]==4) {ss=4; m[p1][p2]=0;}
if(m[p1][p2]==3) {ss=3; m[p1][p2]=0;}
if(m[p1][p2]==2) {ss=2; m[p1][p2]=0;}
if(m[p1][p2]==1) {ss=1; m[p1][p2]=0;}
if(m[p1][p2]==9)
{ if(OK2%2==1)
{
for(j=1;j<=u;j++)
{ m[v[j].x][v[j].y]=0; }
for(j=1;j<=t;j++)
{ m[w[j].x][w[j].y]=8; }
}
else
{
for(j=1;j<=t;j++)
{ m[w[j].x][w[j].y]=0; }
for(j=1;j<=u;j++)
{ m[v[j].x][v[j].y]=8; }
}
OK2++;
}
if(p1>0&&p2>0)
{
if(m[p1-1][p2]==6)
{ if(c[p1-1][p2]==1) {OK=1; break;}
else c[p1-1][p2]=1;
}
if(m[p1+1][p2]==6)
{ if(c[p1+1][p2]==1) {OK=1; break;}
else c[p1+1][p2]=1;
}
if(m[p1][p2-1]==6)
{ if(c[p1][p2-1]==1) {OK=1; break;}
else c[p1][p2-1]=1;
}
if(m[p1][p2+1]==6)
{ if(c[p1][p2+1]==1) {OK=1; break;}
else c[p1][p2+1]=1;
}
}
}
if(OK==1) g<<"INGERAS"<<"\n"<<p1<<" "<<p2<<"\n"<<mvc<<" "<<pasi;
if(OK==2) g<<"FERICIT"<<"\n"<<p1<<" "<<p2<<"\n"<<mvc<<" "<<pasi;
if(OK==3) g<<"RATACIT"<<"\n"<<p1<<" "<<p2<<"\n"<<mvc<<" "<<pasi;
f.close();
g.close();
return 0;
}

Sunt incepator, si chiar nu inteleg ce ar putea sa aiba. Multumesc pentru ajutor.
« Ultima modificare: Martie 18, 2012, 22:39:08 de către Scurtu Vlad » Memorat
Pagini: [1]   În sus
  Imprimă  
 
Schimbă forumul:  

Powered by SMF 1.1.19 | SMF © 2006-2013, Simple Machines