정보올림피아드지역예선

정보올림피아드 초등 - 지역예선] 2008년도 27번문제

원당컴 2013. 9. 3. 17:36
반응형

 

27. 아래 프로그램이 실행된 뒤 lo, hi의 값은?


N = 10

a(0) = 1:

a(1) = 3:

 a(2) = 4:

a(3) = 7:

 a(4) = 8

a(5) = 9:

 a(6) = 11:

a(7) = 13:

a(8) = 14:

a(9) = 16

s = 4

lo = 0:

hi = N - 1

Do While lo <= hi   

   m = Int((lo + hi) / 2)   

   If a(m) = s Then       

     Exit  Do      -   

   ElseIf a(m) > s Then       

     hi = m - 1   -

   Else       

    lo = m + 1   -

  End If

Loop

① lo=0, hi=9 

② lo=2, hi=3 

③ lo=2, hi=4 

④ lo=5, hi=9 

⑤ lo=10, hi=9 

 

문제풀이) 순차적으로 값을 대입해 보면서 변수의 값이 변하는 상태를 확인 한다.

lo

hi 

a(m) 

 0

 9

 4

 4

 8 -

 0

 3

 4

 1

 3 -

 2

 3

 4

 2

 4 -

 

정답) 2번

반응형