int main() { char ch[10]; int m,i,u,v,cas=0; while(scanf("%d%d",&n,&m),n+m) { cas++; chu(); for(i=0;i<m;i++) { scanf("%s%d%d",ch,&u,&v); if('I' == ch[0]) { addx(v,u+n); addx(u,v+n); addy(v,u+n); addy(u,v+n); addz(v,u+n); addz(u,v+n); } else if('X' == ch[0]) { addx(u+n,v); } else if('Y' == ch[0]) { addy(u+n,v); } else { addz(u+n,v); } } printf("Case %d: ",cas); fun(); if(1 == flag) { printf("IMPOSSIBLE\n\n"); continue; } printf("POSSIBLE\n"); for(i=1;i<=n;i++) { printf("%d %d %d %d %d %d\n",tx[i],ty[i],tz[i],tx[i+n],ty[i+n],tz[i+n]); } printf("\n"); } return 0; }
void chu() { int i; flag=0; for(i=1;i<=2*n;i++) { qx[i].clear(); qy[i].clear(); qz[i].clear(); } memset(dux,0,sizeof(dux)); memset(duy,0,sizeof(duy)); memset(duz,0,sizeof(duz)); for(i=1;i<=n;i++) { addx(i,i+n); addy(i,i+n); addz(i,i+n); } }
Game::Game() : univers(), simulator(&univers) { glClearColor(BACKGROUND_COLOR); #ifdef FULLSCREEN glutFullScreen(); #endif setSimulator(&simulator); setUnivers(&univers); Vvector pos(0, 0, 0); Vvector addx(10, 0, 0); Vvector addy(0, 10, 0); for (int i = 0; i < 48; i++) { for (int j = 0; j < 48; j++) { this->univers.addPlanet("Torus", pos); pos += addx; } pos = Vvector(0, pos.y() + addy.y(), pos.z()); } { glutIgnoreKeyRepeat(GLUT_KEY_REPEAT_DEFAULT); glutTimerFunc(KEY_REPEAT_PERIOD, keyboard, 0); } { glutReshapeFunc(windowResizingHandler); glutWindowStatusFunc(windowStatusHandler); #ifdef __APPLE__ glutWMCloseFunc(windowClosingHandler); #endif glutDisplayFunc(displayHandler); } }