´ëȸ Ç®ÀÌ

ÀÌ ¹®Á¦´Â, ¸ÕÀú ±â°èÀÇ ½Äº° ¹øÈ£µéÀ» ´Ü¼øÈ­ ½ÃÄÑ ¼ø¿­(permutation)À» ¸¸µç´Ù.

¿¹Á¦¿¡ ³ª¿Â µ¥ÀÌÅÍ·Î ¿¹¸¦ µéÀÚ¸é, À­ ÁÙ¿¡ 132 392 311 351 231ÀÌ ³ª¿Í ÀÖ°í, ¾Æ·¡ ÁÙ¿¡ 392 351 132 311 231ÀÌ ³ª¿Í Àִµ¥, À­ÁÙÀÇ 132´Â ¾Æ·§ÁÙÀÇ 3¹ø°, À­ÁÙÀÇ 392´Â ¾Æ·§ÁÙÀÇ 1¹ø° ... ¿Í °°Àº ¼ø¼­·Î ´Ü¼øÈ­½Ãų ¼ö ÀÖ´Ù.

¿¹Á¦·Î ³ª¿Â µ¥ÀÌÅÍ¿¡¼­ÀÇ ¼ø¿­Àº 3 1 4 2 5°¡ µÈ´Ù. ±×´ÙÀ½ ¼ø¿­ÀÇ Ã¹ ¹ø°ºÎÅÍ ¼ø¼­´ë·Î º¸¸é¼­, ÀÌÀü ¼ø¿­¿¡¼­ ÇöÀç ¼ø¿­ °ªº¸´Ù Å« °ªÀÌ ³ª¿Â °æ¿ì°¡ ±³Â÷Çß´Ù´Â ÀǹÌÀ̹ǷÎ, ÀÌÀü ¼ø¿­¿¡¼­ Àڱ⺸´Ù Å« °ªÀÌ ³ª¿Â Ƚ¼ö¸¦ ¼¼¾ßÇÑ´Ù.

ÀÌ °úÁ¤¿¡¼­ binary indexed tree¸¦ ±¸¼ºÇϸé O(logN) ÀÇ ½Ã°£¿¡ ÀÌ È½¼ö¸¦ ±¸ÇÒ ¼ö ÀÖ´Ù. ±× ´ÙÀ½ ÇöÀçÀÇ ¼ø¿­ °ªÀ» binary indexed tree¿¡ ´©Àû½ÃŲ´Ù. ÀÌ °úÁ¤ ¿ª½Ã O(logN)ÀÇ ½Ã°£¿¡ ÇÒ ¼ö ÀÖ´Ù. ¼ø¿­ÀÇ ¸¶Áö¸·±îÁö ÀÌ È½¼öµéÀ» ´õÇØ°¡¸é, O(N logN)ÀÇ ½Ã°£ º¹Àâµµ·Î Çظ¦ ±¸ÇÒ ¼ö ÀÖ´Ù.

ÀÌ ¹æ¹ýÀ¸·Î ÇØ°áÇÒ °æ¿ì ¸¸Á¡À» ¹Þµµ·Ï test case°¡ ±¸¼ºµÇ¾î ÀÖ´Ù.

   

[ȨÀ¸·Î]  [µÚ ·Î]