본문 바로가기

정보올림피아드지역예선

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

반응형

 

 

27-28] 배열 a의 a[1]부터 a[10]까지에 10개의 정수 값이 들어 있다. 이 배열은 오름차순으로 정렬되어 있으며, 몇 개의 중복된 값을 가질 수도 있다. 이 때, 배열 a가 몇 개의 서로 다른 값으로 구성되어 있는지를 구하는 프로그램을 작성하였다. 예를 들어 배열 a에 다음과 같이 값들이 저장되어 있다고 하자.

a[1]

a[2]

a[3]

a[4]

a[5]

a[6]

a[7]

a[8]

a[9]

a[10]

3

5

5

6

8

10

11

12

13

13

이 경우에는 배열 a가 3, 5, 6, 8, 10, 11, 12, 13, 이렇게 총 8가지의 값으로 이루어져 있으므로 8이 출력된다.

 

 

 

27.㉠에 들어갈 내용으로 알맞은 것은?

①0

②8

③9

④10

⑤11

28. ㉡에 들어갈 내용으로 알맞은 것은?

①a[i] == a[i - 1]

②a[i] > a[i - 1]

③a[i] >= a[i - 1]

④a[i] < a[i - 1]

⑤a[i] <= a[i - 1]

 

문제풀이) 이 배열이 오름차 순으로 정렬 되어 있으므로

a[2] ~ a[10] 까지 증가 하면서 자신의 바로 앞의 수와 비교 하여 틀리면(바로 앞의 수가 자신보다 작으면) p의 값을 증가 시키면 됨

따라서 ㉠ 에 들어갈 수는 10

㉡ 에 들어갈 내용은 a[i-1] < a[i]

정답)

27번) 4번

28번) 2번

반응형