16-3-³ª.¸ÅÅ©·Î ÇÔ¼ö¿Í ´Ù¸¥ Á¡

ÀζóÀÎ ÇÔ¼ö´Â ¿©·¯ °¡Áö ¸é¿¡¼­ ¸ÅÅ©·Î ÇÔ¼ö¿Í À¯»çÇÑ Á¡ÀÌ ¸¹´Ù. ¾Õ¿¡¼­ ¸¸µç randfunc ÇÔ¼ö¸¦ ¸ÅÅ©·Î ÇÔ¼ö·Î ¸¸µé¸é ´ÙÀ½°ú °°¾ÆÁö´Âµ¥ º¸´Ù½ÃÇÇ Äڵ尡 µ¿ÀÏÇÏ´Ù. ÀÌ ¸ÅÅ©·Î´Â ½ÇÁ¦·Î ¸¹ÀÌ »ç¿ëµÇ¸ç Turboc.h¿¡µµ ÀÌ¹Ì Á¤ÀǵǾî ÀÖ´Ù.

 

#define random(n) (rand()%(n))

 

¸ÅÅ©·Î ÇÔ¼ö´Â È£ÃâµÉ ¶§¸¶´Ù ¸Å¹ø Àü°³µÇ¾î È£ÃâºÎ¿¡ »ðÀԵǹǷΠȣÃâ¿¡ ´ëÇÑ ºÎ´ãÀÌ ¾øÀ¸¸ç ¶ÇÇÑ º»Ã¼ Äڵ尡 ¹Ýº¹ÀûÀ¸·Î »ðÀԵǹǷΠ½ÇÇà ÆÄÀÏÀÇ Å©±â¸¦ Áõ°¡½ÃŲ´Ù. µÎ ÇÔ¼öÀÇ Æ¯Â¡ÀÌ ºñ½ÁÇؼ­ ÀζóÀÎ ÇÔ¼ö°¡ ¾²ÀÏ °÷¿¡ ¸ÅÅ©·Î ÇÔ¼ö°¡ ´ë½Å »ç¿ëµÉ ¼ö ÀÖÀ¸¸ç ±× ¹Ý´ëÀÇ °æ¿ìµµ ¼º¸³ÇÑ´Ù. ÇÏÁö¸¸ ÀζóÀÎ ÇÔ¼ö´Â ¸ÅÅ©·Î ÇÔ¼ö¿¡ ºñÇØ ´ÙÀ½°ú °°Àº Ãß°¡ÀûÀÎ ÀÌÁ¡ÀÌ ÀÖ´Ù.

 

¨ç ÀζóÀÎ ÇÔ¼ö´Â ŸÀÔÀ» ÀνÄÇÑ´Ù. ¸ÅÅ©·Î ÇÔ¼ö°¡ Àü´ÞµÈ Àμö¸¦ ±â°èÀûÀ¸·Î ´Ü¼øÈ÷ ġȯÇÏ´Â °Í°ú´Â ºñ±³µÈ´Ù. ±×·¡¼­ À߸øµÈ ŸÀÔÀ» Àü´ÞÇÔÀ¸·Î½á ¹ß»ýÇÒ ¼ö ÀÖ´Â ¹Î°¨ÇÑ ¿¡·¯ 󸮿¡ À¯¸®ÇÏ¸ç ¶ÇÇÑ ÄÄÆÄÀÏ·¯ÀÇ »ê¼ú º¯È¯ ¼­ºñ½º¸¦ ¹ÞÀ» ¼ö ÀÖ´Ù.

¨è ÀζóÀÎ ÇÔ¼ö´Â ÇÔ¼öÀÇ ÇüŸ¦ ¶ç°í Àֱ⠶§¹®¿¡ ÇÊ¿äÇÒ °æ¿ì Áö¿ªº¯¼ö¸¦ »ç¿ëÇÒ ¼ö ÀÖ´Ù. ¸ÅÅ©·Îµµ ºí·Ï º¯¼ö ÇüÅ·ΠÁö¿ªº¯¼ö¸¦ »ç¿ëÇÒ ¼ö´Â ÀÖÁö¸¸ ÀϹÝÀûÀÌÁö´Â ¾Ê´Ù. ±×·¡¼­ ÀζóÀÎ ÇÔ¼ö°¡ ¸ÅÅ©·Î ÇÔ¼öº¸´Ù´Â Á¶±Ý ´õ º¹ÀâÇÑ µ¿ÀÛÀ» Á¤ÀÇÇÒ ¼ö ÀÖ´Ù.

¨é ¸ÅÅ©·Î´Â ÄÄÆÄÀÏ ÀÌÀü ´Ü°èÀÎ Àüó¸® ´Ü°è¿¡¼­ ±â°èÀûÀ¸·Î Àμö¸¦ ġȯÇϱ⠶§¹®¿¡ °ýÈ£¸¦ ½ÎÁö ¾ÊÀ¸¸é ¿¹»óÄ¡ ¸øÇÑ ºÎÀÛ¿ëÀÇ À§ÇèÀÌ ³ô´Ù. »Ó¸¸ ¾Æ´Ï¶ó ¸ÅÅ©·ÎÀÇ Àμö¿¡ ++ ¿¬»êÀÚ³ª += ¿¬»êÀÚ¸¦ »ç¿ëÇÏ´Â °ÍÀº ¿©·¯ ¸ð·Î À§ÇèÇÑ ¸éÀÌ Àִµ¥ ÀÌ·± ´ÜÁ¡¿¡ ´ëÇؼ­´Â ÀÌ¹Ì °æÇèÇØ º» ¹Ù°¡ ÀÖ´Ù. ÀζóÀÎ ÇÔ¼ö´Â °ª¿¡ ÀÇÇÑ Àμö Àü´Þ, ¿¬»êÀÚÀÇ ¿ì¼± ¼øÀ§¿Í °áÇÕ ¹ýÄ¢ÀÇ Àû¿ëÀ» ¹Þ±â ¶§¹®¿¡ ÀÌ·± À§ÇèÀÌ ¾ø´Ù.

 

¿©·¯ ¸ð·Î ºñ±³ÇØ º¼ ¶§ ÀζóÀÎ ÇÔ¼ö°¡ ¸ÅÅ©·Î ÇÔ¼öº¸´Ù´Â ¿ª½Ã ÇѼö À§¶ó´Â °ÍÀ» ¾Ë ¼ö ÀÖ´Ù. ¸ÅÅ©·Î ÇÔ¼öÀÇ °£ÆíÇÔ¿¡ ÄÄÆÄÀÏ·¯ÀÇ »ê¼ú º¯È¯, ¿ì¼± ¼øÀ§ Àû¿ë µîÀÇ ÀåÁ¡À» °áÇÕÇÑ ÇÔ¼ö°¡ ¹Ù·Î ÀζóÀÎ ÇÔ¼öÀÌ´Ù. ±×·¡¼­ C++¿¡¼­´Â ¸ÅÅ©·Î ÇÔ¼öº¸´Ù °¡±ÞÀûÀ̸é ÀζóÀÎ ÇÔ¼ö¸¦ ¾µ °ÍÀ» ±ÇÀåÇÑ´Ù. ¾ÕÀ¸·Î ÀÌ·± °£´ÜÇÑ ÇÔ¼ö¸¦ ¸¸µé ÀÏÀÌ ÀÖÀ¸¸é ¸ÅÅ©·Î ÇÔ¼ö ´ë½Å ÀζóÀÎ ÇÔ¼ö¸¦ ¾²±â ¹Ù¶õ´Ù.

ÀζóÀÎ ÇÔ¼ö°¡ ÁÁ±â´Â ÇÏÁö¸¸ ±×·¸´Ù°í Çؼ­ ÀÌ¹Ì ÀÛ¼ºµÇ¾î ÀÖ´Â Àß µ¿ÀÛÇÏ´Â ¸ÅÅ©·Î ÇÔ¼ö±îÁö ÀζóÀÎÀ¸·Î ¹Ù²Ü ÇÊ¿ä±îÁö´Â ¾ø´Ù. ŸÀÔÀ» ÀνÄÇÏÁö ¸øÇÏ´Â ¸ÅÅ©·Î ÇÔ¼öÀÇ ´ÜÁ¡ÀÌ ¶§·Î´Â À¯¿¬ÇÔÀ̶ó´Â ÀåÁ¡À¸·Î È°¿ëµÇ±âµµ ÇϹǷΠ°£´ÜÇÑ °æ¿ì¶ó¸é ¾ÆÁ÷±îÁöµµ ¸ÅÅ©·Î ÇÔ¼ö´Â ³ª¸§´ë·Î È°¿ë ¹üÀ§¸¦ °¡Áö°í ÀÖ´Â ¼ÀÀÌ´Ù. min, max, abs °°Àº ¸ÅÅ©·Î ÇÔ¼öµéÀÌ ÁÁÀº ¿¹ÀÌ´Ù. ¶ÇÇÑ ´ÙÀ½°ú °°Àº ¸ÅÅ©·Î ÇÔ¼ö´Â ÀζóÀÎ ÇÔ¼ö·Î´Â ¸¸µé ¼ö ¾ø´Ù.

 

#define ARSIZE(ar) (sizeof(ar)/sizeof(ar[0]))

 

¹è¿­ÀÇ Å©±â¸¦ °è»êÇÏ´Â ¸ÅÅ©·ÎÀε¥ ¹è¿­ ÀÚü¸¦ ÇÔ¼öÀÇ Àμö·Î ³Ñ±æ ¼ö ¾ø±â ¶§¹®¿¡ ÀζóÀÎ ÇÔ¼ö·Î´Â ÀÌ·± µ¿ÀÛÀ» ±¸ÇöÇÒ ¼ö ¾ø´Ù. ¸ÅÅ©·Î ÇÔ¼öÀÇ ´Ü¼ø ¹«½ÄÇÔ¸¸ÀÌ ÀÌ·± ÇÔ¼ö¸¦ Çã¿ëÇÑ´Ù.