본문 바로가기

정보올림피아드지역예선

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

반응형



문제풀이)


변수 \ 번지 

 a

 1

 2

 3

 b

 3

 6

 9

 c

 1

 4

 9


i = 0 , j = 0 , k = 0 : res = 0 + 1 * 3 + 1 = 4

              k = 1 : res = 4 + 1 * 3 + 4 = 11

              k = 2 : res = 11 + 1 * 3 + 9 = 23

i = 0 , j = 1, k = 0 : res = 23 + 1 * 6 + 1 = 30

             k = 1 : res = 30 + 1 * 6 + 4 = 40

             k = 2 : res = 40 + 1 * 6 + 9 = 55

i = 0 , j = 2, k= 0 : res = 55 + 1 * 9 + 1 = 65

             k= 1 : res = 65 + 1 * 9 + 4 = 78

             k = 2 : res = 78 + 1 * 9 + 9 = 96


===================================>

이렇게 일일히 구하는 방법이 있지만 이렇게 구하려면 27회를 계산하여야 한다.

따라서 로직을 살펴 보면 

a[i] * b[j] + c[k] 가 27 회 수행하게 되며

a[i] * b[j] 와 c[k] 부분을 분리 해서 계산 을 할 수 가 있다.

c[k] 부분은 1 + 4 + 9 가 9 회 반복 되는 것을 확인 할 수 있으며 14 * 9 = 126 이라는 것을 알 수 있다.

a[i] * b[j] 부분은 1 * 3 이 3회 1* 6 이 3회 1 * 9 가 3회 2 * 3 이 3회 2 * 6 이 3회 2 * 9 가 3회 3 * 3 이 3회 3 * 6 이 3회 3 * 9 이 3회 계산이 된다.

따라서 이 부분을 계산 하면 9 + 18 + 27 + 18 + 36 + 54 + 27 + 54 + 81 = 324

따라서 정답은 450 이다. 

반응형