#include #include #define DEBUG #define MAX 100 FILE *inp; int buf[101][2]; int n, pNum = 1; int in[ 101 ]; int cnt = 0; int oneCase() { int i, a, b, c; fscanf( inp, "%d\n", &n ); if ( !n ) return 0; /* ANPASSEN !!!! */ cnt = 0; /* SOLVING: */ for ( i = 0; i < n ; i++) { fscanf( inp, "%d %d/n", &buf[ i ][0] , &buf[ i][1] ); } buf[i][0]= buf[0][0]; buf[i][1]= buf[0][1]; if ( buf[0][0] == buf[1][0] ) if ( buf[0][1] < buf[1][1] ) b = 0; else b = 2; else if ( buf[0][0] < buf[1][0] ) b = 1; else b = 3; if ( buf[1][0] == buf[2][0] ) if ( buf[1][1] < buf[2][1] ) c = 0; else c = 2; else if ( buf[1][0] < buf[2][0] ) c = 1; else c = 3; printf("Floor #%d\n", pNum ); for ( i = 3; i < n + 1; i++ ) { a = b; b = c; if ( buf[i-1][0] == buf[i][0] ) if ( buf[i-1][1] < buf[i][1] ) c = 0; else c = 2; else if ( buf[i-1][0] < buf[i][0] ) c = 1; else c = 3; if ( a == (b + 1) % 4 && b == (c + 1) % 4 ){ printf("Surveillance is impossible.\n"); cnt = -1; } } if ( cnt == 0) printf("Surveillance is possible.\n" ); return 1; } int main() { inp = fopen( "video.in", "r" ); /* for ( i=0; i < MAX; i++ ) buf[0]; */ while( oneCase() ) { printf("\n"); pNum++; } fclose( inp ); return 0; }