728x90
반응형
문제 : http://www.jungol.co.kr/bbs/board.php?bo_table=pbank&wr_id=134&sca=10d0
문제
첫 번째는 1, 두 번째는 2, 세 번째부터는 앞의 두 수의 곱을 100으로 나눈 나머지로 이루어진 수열이 있다.
100 이하의 자연수 N을 입력받아 재귀함수를 이용하여 N번째 값을 출력하는 프로그램을 작성하시오.
입력 예
8
출력 예
92
Hint!
1 2 2 4 8 32 56 92 ...
코드 :
#include <stdio.h>
void print(int num, int *p);
int main()
{
int num, arr[100] ={0,};
scanf("%d",&num);
print(num,&arr);
return 0;
}
void print(int num, int *p)
{
int i;
p[0] = 1;
p[1] = 2;
for(i = 2; i<=num; i++)
{
p[i] = (p[i-2] * p[i-1])%100;
}
printf("%d",p[num-1]);
}
이건 time limit exceed 에러
# include <stdio.h>
int print(int num);
int main()
{
int num;
scanf("%d",&num);
printf("%d",print(num));
return 0;
}
int print(int num)
{
if(num == 1)
return 1;
if(num == 2)
return 2;
return (print(num-1)*print(num-2))%100;
}
728x90
반응형
최근댓글