¿¹Á¦ÀÇ È¸é¿¡ ³ªÅ¸³ª´Â ¾ËÆĺª ¹®ÀÚ¸¦ ¸ÅÆ®¸¯½º°¡ Àΰ£¿¡°Ô º¸³»´Â ½ÅÈ£¶ó°í ÇÏÀÚ. ½ÅÈ£´Â ¿©·¯ °¡Áö ŸÀÔÀÌ ´Ù¸¥ Á¤º¸µé·Î ±¸¼ºµÇ¹Ç·Î ½ÅÈ£¸¦ Á¤ÀÇÇϱâ À§ÇØ ±¸Á¶Ã¼°¡ ÇÊ¿äÇÏ¸ç µ¿½Ã¿¡ ¿©·¯ °³ÀÇ ½ÅÈ£°¡ ¿òÁ÷À̹ǷΠÀÌ·± ±¸Á¶Ã¼°¡ ¹è¿À» ±¸¼ºÇØ¾ß ÇÑ´Ù. ¿¹Á¦ÀÇ ½ÅÈ£ ±¸Á¶Ã¼´Â ´ÙÀ½°ú °°ÀÌ Á¤ÀǵǾî ÀÖ´Ù.
struct Signal
{
BOOL exist; // ½ÅÈ£ÀÇ Á¸Àç ¿©ºÎ
char ch; // Ãâ·ÂÇÒ ¹®ÀÚ
int x,y; // ÇöÀç ÁÂÇ¥
int distance; // À̵¿ÇÒ °Å¸®
int nFrame; // ¼Óµµ
int nStay; // ¼Óµµ¿¡ ´ëÇÑ Ä«¿îÆ®
};
Signal S[MAX];
¸ÅÅ©·Î »ó¼ö MAX°¡ 1024·Î Á¤ÀǵǾî ÀÖÀ¸¹Ç·Î S ¹è¿Àº 1024 Å©±â¸¦ °¡Áö¸ç ÃÖ´ë 1024°³ÀÇ ½ÅÈ£µéÀÌ µ¿½Ã¿¡ »ý¼º, À̵¿ÇÒ ¼ö ÀÖ´Ù. ¸Þ¸ð¸®¸¦ Àý¾àÇϰųª ´õ ¸¹Àº ½ÅÈ£¸¦ »ý¼ºÇÏ°í ½Í´Ù¸é ¿¬°á ¸®½ºÆ®³ª µ¿Àû ¹è¿À» ¾µ ¼öµµ ÀÖ°ÚÀ¸³ª ¿¹Á¦ ¼öÁØ¿¡¼´Â Á¤Àû ¹è¿·Îµµ ÃæºÐÇÏ´Ù. ¸ÞÀÎ ·çÇÁ¿¡¼´Â ÀÌ ¹è¿ÀÇ ºóÄ¿¡ ÁÖ±âÀûÀ¸·Î ½ÅÈ£¸¦ »ý¼ºÇϵµ·Ï µÇ¾î ÀÖ´Ù. ½ÅÈ£ ±¸Á¶Ã¼ÀÇ °¢ ¸â¹öµéÀ» ºÐ¼®ÇØ º¸ÀÚ.
¸ÕÀú exist´Â ÀÌ ½ÅÈ£°¡ Á¸ÀçÇÏ´ÂÁö ¾Æ´ÑÁö¸¦ ÁöÁ¤ÇÑ´Ù. S ¹è¿ÀÌ Àü¿ªÀ¸·Î ¼±¾ðµÇ¾úÀ¸¹Ç·Î ¸ðµç ½ÅÈ£ÀÇ exist´Â FALSE·Î Ãʱâ鵃 °ÍÀÌ´Ù. ¸ÞÀÎ ·çÇÁ¿¡¼ ½ÅÈ£¸¦ »ý¼ºÇϸé exist´Â TRUE·Î º¯°æµÇ°í ÀÏ´Ü »ý¼ºµÈ ½ÅÈ£´Â ÀÚ½ÅÀÇ ¹®ÀÚ¸¦ ÀÏÁ¤ ¼Óµµ·Î ¿òÁ÷À̸ç ÁöÁ¤ÇÑ °Å¸®¿¡ µµ´ÞÇÏ¸é »ç¶óÁø´Ù. »ç¶óÁø ½ÅÈ£ÀÇ exist´Â FALSE°¡ µÇ¾î ´Ù¸¥ ½ÅÈ£¸¦ À§ÇØ ÀÚ¸®¸¦ ³» ÁÙ °ÍÀÌ´Ù.
ch´Â ½ÅÈ£ÀÇ ¹®ÀÚÀÌµÇ A~Z±îÁöÀÇ ¾ËÆĺª Áß ÀÓÀÇÀÇ ¹®ÀÚ Çϳª·Î »ý¼ºµÇ¸ç x, y´Â ½ÅÈ£ÀÇ ÇöÀç À§Ä¡ÀÌ´Ù. ½ÅÈ£°¡ ¾Æ·¡·Î ¿òÁ÷À̹ǷΠx´Â »ý¼ºµÉ ¶§ ³¼ö·Î ÇÑ ¹ø¸¸ ÃʱâȵǸç y´Â À̵¿½Ã¸¶´Ù °è¼Ó Áõ°¡ÇÑ´Ù. distance´Â ½ÅÈ£ÀÇ À̵¿ °Å¸®¸¦ ÁöÁ¤Çϴµ¥ ÀÌ °Å¸®¸¸Å À̵¿Çϸé ÀÚµ¿À¸·Î »ç¶óÁø´Ù. ´ÙÀ½Àº ȸé Áß¾ÓÂë¿¡¼ »ý¼ºµÇ¾î ¾Æ·¡·Î À̵¿ÁßÀÎ ½ÅÈ£ 'M'ÀÇ Á¤º¸µéÀÌ´Ù.
x´Â »ý¼ºµÈ ¼öÆò À§Ä¡¸¦ °¡¸®Å°¸ç y´Â ÇöÀç MÀÇ ¼öÁ÷ À§Ä¡°ªÀÌ´Ù. ch´Â Ãâ·ÂÇÒ ¹®ÀÚ ÄÚµå 'M'À» °¡Áö¸ç distance´Â ÀÌ ½ÅÈ£°¡ ¼öÁ÷À¸·Î ¾îµð±îÁö À̵¿ÇÒ °ÍÀΰ¡¸¦ ±â¾ïÇÑ´Ù. ³ª¸ÓÁö ¸â¹ö nFrame°ú nStay´Â ½ÅÈ£ÀÇ À̵¿ ¼Óµµ¸¦ ÅëÁ¦Çϴµ¥ ÀÌ µÎ ¸â¹öÀÇ ¿ªÇÒÀº ´ÙÀ½ Ç׿¡¼ ¿¬±¸ÇØ º¸µµ·Ï ÇÏÀÚ.
ÀÌ ±¸Á¶Ã¼¿¡ ½ÅÈ£¸¦ »ý¼ºÇÏ´Â Äڵ带 º¸ÀÚ. main ÇÔ¼öÀÇ Áö¿ªº¯¼ö freq´Â ½ÅÈ£°¡ »ý¼ºµÉ È®·üÀ» ÁöÁ¤Çϴµ¥ 15·Î ÃʱâȵǾî ÀÖÀ¸¹Ç·Î 15¹ø¿¡ ÇÑ ¹ø²Ã·Î ½ÅÈ£¸¦ »ý¼ºÇÑ´Ù. (random(freq) == 0) Á¶°Ç¹®Àº 0~14±îÁö ³¼ö¸¦ ¸¸µç °á°ú°¡ 0ÀÏ ¶§¸¦ ÀǹÌÇϹǷΠ1/15ÀÇ È®·üÀ» ÀǹÌÇÑ´Ù. ºñ±³µÇ´Â °ª 0Àº º° ´Ù¸¥ Àǹ̴ ¾ø°í ´Ü¼øÈ÷ ¸¸µç ³¼ö ÁßÀÇ Çϳª¸¦ ÀǹÌÇϹǷΠ¹üÀ§³»ÀÇ ÀÓÀÇ ¼öÀ̱⸸ ÇÏ¸é µÈ´Ù. freq¸¦ Áõ°¡½ÃÅ°¸é ½ÅÈ£°¡ ´ú »ý¼ºµÉ °ÍÀÎ°í °¨¼Ò½ÃÅ°¸é ´õ ¸¹Àº ½ÅÈ£°¡ »ý¼ºµÇ¸ç freq°¡ 1ÀÌ¸é ¸Å¹ø ½ÅÈ£¸¦ »ý¼ºÇÒ °ÍÀÌ´Ù.
½ÅÈ£¸¦ »ý¼ºÇÒ ¶§´Â S ¹è¿¿¡¼ ½ÅÈ£°¡ µé¾î ÀÖÁö ¾ÊÀº ºóÄÀ» ¸ÕÀú ã´Âµ¥ óÀ½ºÎÅÍ ¼øȸÇÏ¸é¼ exist°¡ FALSEÀÎ ÄÀ» ã´Â´Ù. °Ë»ö ¹æ¹ýÁß¿¡ °¡Àå °£´ÜÇÑ ¼øÂ÷ °Ë»öÀ» ¾²´Â °ÍÀÌ´Ù. ¸¸¾à MAX±îÁö ·çÇÁ¸¦ µ¹¾Ò´Âµ¥ ºó ÄÀÌ ¾øÀ¸¸é ÃÖ´ë °³¼ö¸¸Å ¸ðµç ½ÅÈ£°¡ »ý¼ºµÇ¾î ÀÖ´Â °ÍÀ̹ǷΠ´õ ÀÌ»ó ½ÅÈ£¸¦ »ý¼ºÇÒ ¼ö ¾ø´Ù. ºóÄÀ» ãÀ¸¸é ÀÌ ÄÀ» µ¶Á¡Çϱâ À§ÇØ exist¸¦ TRUE·Î ¹Ù²Ù°í »õ·Î¿î ½ÅÈ£¿¡ ´ëÇÑ Á¤º¸¸¦ ÃʱâÈÇϴµ¥ ÁÖ·Î ³¼ö¸¦ »ç¿ëÇÑ´Ù.
ch´Â A~Z »çÀÌÀÇ ¹®ÀÚ·Î, ¼öÆò À§Ä¡ x´Â 0~79 Áß Çϳª·Î, distance´Â 9~22±îÁö·Î ¼±ÅõȴÙ. ¼öÁ÷ À§Ä¡ y´Â ÃÖÃÊ 0À̸ç È¸é »ó´Ü¿¡¼ºÎÅÍ Ãâ¹ßÇÑ´Ù. nFrameÀº ½ÅÈ£ÀÇ À̵¿ ¼Óµµ¸¦ ÁöÁ¤Çϴµ¥ 5~19±îÁöÀÇ ³¼ö°ªÀ¸·Î ÃʱâȵȴÙ. ´ÙÀ½ Ç׿¡¼ ÀÌ ¼Óµµ°¡ ¾î¶»°Ô Àû¿ëµÇ´ÂÁö º¸µµ·Ï ÇÏÀÚ.