È®ÀÎÁ» ºÎʵ右´Ï´Ù...°ªÀÌ Àڲ٠Ʋ¸®°Ô ³ª¿À³×¿ä
¹®Á¦´Â 04³â 11¿ù 06ÀÏ ÀÔ´Ï´Ù.......(2¹®Á¦Àε¥ °°ÀÌ ¿Ã¸®´Ï ¿¡·¯°¡ ³ª¼ À§¾Æ·¡ ³ª´©¾î¼ Áú¹®µå¸³´Ï´Ù... ¿ì¼± 1¹ø ¹®Á¦ÀÔ´Ï´Ù)
(Áß±ÞÇü¹®Á¦ÀÔ´Ï´Ù)
°í°´¹øÈ£ ¿Â÷ÄÚµå Á¼®ÄÚµå ¿Â÷¿ä±Ý ½Â°´¸¸Á·µµ °í°´±¸ºÐÄÚµå Ãâ¹ßÁöÄÚµå µµÂøÁöÄÚµå
¼ýÀÚ5 ¹®ÀÚ2 ¹®ÀÚ2 ¼ýÀÚ6 ¼ýÀÚ2 ¹®ÀÚ2 ¹®ÀÚ2 ¹®ÀÚ2
ž½ÂÀοø ¿©Çà°Å¸® ¿ùÀÌ¿ëȽ¼ö
¼ýÀÚ3 ¼ýÀÚ5 ¼ýÀÚ2
¹®Á¦1) Ãâ¹ßÁöÄڵ尡 SUÀÌ°í ½Â°´¸¸Á·µµ°¡ 23ÀÌÇÏÀÎ ÀÚ·á¿¡ ´ëÇÏ¿© (¿ùÀÌ¿ëȽ¼ö * ¿©Çà°Å¸®)°ª¿¡ µû¶ó ³»¸²Â÷¼ø Á¤·ÄÇßÀ»¶§ 5¹øÂ° ÀÚ·áÀÇ °í°´¹øÈ£¸¦ Ãâ·ÂÇϽÿÀ. µ¿Àϰª ¹ß»ý½Ã °í°´¹øÈ£¿¡ ´ëÇØ ¿À¸§Â÷¼ø Á¤·ÄÇÏ¿© ó¸® ÇϽÿÀ.
Á¤´ä 359 509 --> 40410 / 49 149 --> 40074
* Á¦°¡ÇÑ ÄÚµùÀÔ´Ï´Ù(Ʋ¸°ºÎºÐ È®ÀÎ ºÎʵ右´Ï´Ù)
Option Explicit
Sub main()
''''Çʼöº¯¼öÁöÁ¤
Dim Àμö1, Àμö2, ¹öÆÛ, i As Variant ''''Çٽɺ¯¼öÁöÁ¤
Dim Ãâ¹ßÁöÄÚµå, ½Â°´¸¸Á·µµ, ¿ùÀÌ¿ëȽ¼ö, ¿©Çà°Å¸®, ÇÕ°è(1000), °í°´¹øÈ£(1000), temp, num, j As Variant
''''ÀμöÁöÁ¤
Àμö1 = Val(Left(Command, InStr(Command, " "))) Àμö2 = Val(Mid(Command, InStr(Command, " "))) ''''ÀÔ·ÂÆÄÀÏÁöÁ¤
Open "c:\c_it\data\abc0026.txt" For Input As #1 For i = 1 To Àμö2 Line Input #1, ¹öÆÛ If i >= Àμö1 Then ''''º¯¼ö°ªÀúÀå ½Â°´¸¸Á·µµ = Val(Mid(¹öÆÛ, 16, 2)) ¿ùÀÌ¿ëȽ¼ö = Val(Right(¹öÆÛ, 2)) ¿©Çà°Å¸® = Val(Mid(¹öÆÛ, 27, 5)) Ãâ¹ßÁöÄÚµå = Trim(Mid(¹öÆÛ, 20, 2)) ''''ÇÙ½É¾Ë°í¸®Áò If Ãâ¹ßÁöÄÚµå = "SU" And ½Â°´¸¸Á·µµ <= 23 Then num = num + 1 ÇÕ°è(num) = (¿ùÀÌ¿ëȽ¼ö * ¿©Çà°Å¸®) °í°´¹øÈ£(num) = Val(Left(¹öÆÛ, 5)) End If End If Next i ''''Á¤·Ä¾Ë°í¸®Áò For i = 1 To num For j = i To num If ÇÕ°è(i) < ÇÕ°è(j) Or ((ÇÕ°è(i) = ÇÕ°è(j)) And (°í°´¹øÈ£(i) > °í°´¹øÈ£(j))) Then temp = ÇÕ°è(i) ÇÕ°è(i) = ÇÕ°è(j) ÇÕ°è(j) = temp temp = °í°´¹øÈ£(i) °í°´¹øÈ£(i) = °í°´¹øÈ£(j) °í°´¹øÈ£(j) = temp End If Next j Next i Close #1 ''''Ãâ·ÂÆÄÀÏó¸® Open "c:\c_it\data\ans1.txt" For Output As #2 Print #2, Àμö1, Àμö2, °í°´¹øÈ£(5) Debug.Print Àμö1, Àμö2, °í°´¹øÈ£(5) Close #2 End Sub
|