4 x 4 nqueen ¹®Á¦¸¦ »ý°¢ÇØ º¸ÀÚ.
À§ ±×¸²Àº °¡´ÉÇÑ ÇÑ °¡Áö °æ¿ìÀÇ ¿¹ÀÌ´Ù.
col[ ] ¹è¿¿¡ 2 4 1 3 À¸·Î ³ªÅ¸³½´Ù. i ´Â Çà col[i] ´Â ¿À» ³ªÅ¸³½´Ù.
¹æ¹ý 1
ÆÑÅ丮¾ó ÇüŸ¦ ¹ß»ý½ÃÅ°¸é¼ °¡´ÉÇÏÁö ¾Ê´Â °æ¿ì¿¡´Â È®ÀåÀ» ÇÏÁö ¾Ê´Â´Ù.
col[1] 1 À» ³õÀº ÈÄ , col[2] ¿¡ 1 Àº °°Àº ¿À̹ǷΠ¾ÈµÇ°í , 2 ´Â ´ë°¢¼±¿¡ ÀÖÀ¸¹Ç·Î ¾ÈµÇ°í , ....
1 2 3 4 1 2 4 3 ....¼¼°¡Áö °æ¿ì¸¦ °Ë»çÇÑ´Ù.µÎ °¡Áö °æ¿ì¸¦ ¸ðµÎ ¸¸Á· ½ÃÅ°±â À§Çؼ i - j = abs( col[i] - col[j])
- Çà °Ë»ç : col[] ¹è¿¿¡´Â ¼ö Çϳª¸¸ µé¾î°¡¹Ç·Î °°ÀºÇà¿¡ µÎ°³ÀÇ ÄýÀÌ ¿Ã¼ö´Â ¾ø´Ù.
- ¿ °Ë»ç :col[i] = col[j]
- ´ë°¢ ¼± : i - j = Àý´ëÄ¡(col[i]-col[j])
- ºÏ¼ÂÊ ´ë°¢¼± üũ
ÀÌ ´ë°¢¼± ¼ººÐÀº Çà°ú ¿ÀÌ µ¿½Ã¿¡ 1 ¾¿ °¨¼ÒÇÏ´Â ÇϹǷΠj ´Â i - k ÀÌ°í col[j] ´Â col[i] - k ÀÌ´Ù.
- ºÏµ¿ÂÊ ´ë°¢¼± üũ
ÀÌ ÂÊ ´ë°¢¼±Àº ÇàÀº Çϳª¾¿ °¨¼ÒÇÏ°í , ¿À» Çϳª¾¿ Áõ°¡ÇϹǷΠj ´Â i - k ÀÌ°í col[j] ´Â col[i] + k ÀÌ´Ù.
nqueen ¼Ò½º¡å¹æ¹ý 2 (Á¶±Ý ´õ °³¼±µÈ ¹æ¹ý)
¼¼ °³ÀÇ ¹è¿À» ÀÌ¿ëÇÑ´Ù.
- ¿ üũ -- check[i] ¼ö i °¡ »ç¿ëÇÏ°í ÀÖÀ¸¸é 1 ¾Æ´Ï¸é 0
- ¿ÞÂÊ ´ë°¢¼± üũ -- Çà,¿À» »©¸é °°Àº¼ö°¡ ³ª¿À´Â ¼ºÁúÀ» ÀÌ¿ëÇÏ
- ¿À¸¥ÂÊ ´ë°¢¼± üũ -- Çà,¿À» ´õÇÏ¸é °°Àº ¼ö°¡ ³ª¿À´Â ¼ºÁúÀ» ÀÌ¿ëÇÔ.
ÁÖÀÇÇÒ °ÍÀº ¿ÞÂÊ ´ë°¢¼± üũ½Ã¿¡ Çà°ú¿À» »©´Â °æ¿ì À½¼ö°¡ ³ª¿Ã¼ö ÀÖÀ¸¹Ç·Î »«¼ö¿¡ ÀÏÁ¤ÇÑ ¼ö¸¦ ´õÇؼ À½¼ö°¡ ³ª¿ÀÁö ¾Êµµ·Ï ÇØ¾ß ÇÔ.(n * n nqueen ¹®Á¦À̸é n À» ´õÇÏ¸é ¾Æ¹«¸® ÀÛÀº ¼ö°¡ ³ª¿À´õ¶óµµ À½¼ö°¡ ³ª¿ÀÁö ¾ÊÀ½)
nqueen ¼Ò½º ¡å