정보올림피아드지역예선
정보올림피아드 초등 - 지역예선] 2010년도 23-24번문제
원당컴
2016. 2. 5. 20:12
반응형
23번 풀이)
f 함수를 보면 a가 0보다 큰 경우 계속해서 자기 자신을 호출하는 재귀 함수이다.
따라서 풀어 보면 다음과 같다.
f(3,2) = f(2,4) + 2;
f(2,4) = f(1,8) + 4;
f(1,8) = f(0,16) + 8;
f(0,16) = 16;
따라서 f(3,2) = 16 + 8 + 4 + 2 = 30
24번 풀이)
23번 문제 풀이 과정을 살펴 보면 b의 값을 계속 2배씩 증가 시키면서 a+1 회 반복하여 합하는 함수이다.
따라서 ㄱ 에는 처음 들어온 b가 들어 오며
ㄴ 에는 b*2 가 들어와야 한다.
ㄱ에 0 과 ㄴ 에 b 가 입력 되는 경우는 while 에서 a 번 만큼 수행 하기 때문에 a + 1회 와 같은 효과를 주기 위해 sum = b 로 초기 화 한 후에 b * 2를 합해 나간다.
반응형