#include #include #include #include #include #define f printf #define n f("\r\n") #define r(_,n)for(int _=0;_ 1?( *a[1]-48) :4;if(S< 2 ||S>8){ fputs("invalid board size" "\n" ,stderr); return 1;} atexit(x); f ("\033[?1049h");tc\ getattr(0,&O);struct termios o =O;o. c_iflag &=~ ( BRKINT| ICRNL| INPCK |ISTRIP| IXON);o.c_oflag&=~ OPOST;o. c_cflag|= CS8;o.c_lflag&=~(ECHO |ICANON|IEXTEN|ISIG); o.c_cc[VMIN]=0;o.c_cc [VTIME]=1 ;tcsetattr (0,2,&o);f("\e[?25l") ;p();p();while(32){f( "\e[2J\e[H");_();r(i ,S){l();f ("| ");r( j,S){if(!*G)f(" " " | "); else if (*G>= 1024)f(" " "%2dk |" " ", * G/ 1024);else f("%4d " "| ",*G); ++G;}n;l() ;if(i