¼Ò½º:
#include <stdio.h> int board[100][100]; int tile=0; int size,dr,dc; /* dr Àº ¹è¼ö±¸ÀÇ Çà, dc ´Â ¹è¼ö±¸ÀÇ ·Ä */ void tileboard(int toprow,int topcol,int dr,int dc,int size) { int tiletouse; int quadrantsize; if (size==1) return; tiletouse=++tile;//»ç¿ëÇÒ Å¸ÀÏ ¹øÈ£ quadrantsize=size/2; //4 µîºÐ ÇÑ À§ ¿ÞÂÊ »ç°¢Çü if (dr< toprow + quadrantsize && dc< topcol+quadrantsize) //¹è¼ö·Î°¡ ÀÖ´Â °æ¿ì tileboard(toprow,topcol,dr,dc,quadrantsize); else{ //¹è¼ö·Î°¡ ¾ø´Â °æ¿ì board[toprow+quadrantsize-1][topcol+quadrantsize -1]=tiletouse; tileboard(toprow,topcol,toprow+quadrantsize-1,topcol+quadrantsize-1,quadrantsize); } //4 µîºÐÇÑ À§ ¿À¸¥ÂÊ »ç°¢Çü if (dr< toprow + quadrantsize && dc>= topcol+quadrantsize) tileboard(toprow,topcol+quadrantsize,dr,dc,quadrantsize); else{ board[toprow+quadrantsize-1][topcol+quadrantsize]=tiletouse; tileboard(toprow,topcol+quadrantsize,toprow+quadrantsize-1,topcol+quadrantsize,quadrantsize); } //4 µîºÐÇÑ ¾Æ·¡ ¿ÞÂÊ »ç°¢Çü if (dr>= toprow + quadrantsize && dc< topcol+quadrantsize) tileboard(toprow+quadrantsize,topcol,dr,dc,quadrantsize); else{ board[toprow+quadrantsize][topcol+quadrantsize -1]=tiletouse; tileboard(toprow+quadrantsize,topcol,toprow+quadrantsize,topcol+quadrantsize-1,quadrantsize); } //4 µîºÐÇÑ ¾Æ·¡ ¿À¸¥ÂÊ »ç°¢Çü if (dr>= toprow + quadrantsize && dc>= topcol+quadrantsize) tileboard(toprow+quadrantsize,topcol+quadrantsize,dr,dc,quadrantsize); else{ board[toprow+quadrantsize][topcol+quadrantsize]=tiletouse; tileboard(toprow+quadrantsize,topcol+quadrantsize,toprow+quadrantsize,topcol+quadrantsize,quadrantsize); } } int main() { scanf("%d %d %d",&size,&dr,&dc); tileboard(1,1,dr,dc,size); //Ãâ·Â... return 0; }