뢰딩

뢰딩

c언어python
뢰딩뢰딩· 2년

질문백준 11726번을 푸는데

#include <cstdio> int arr[1005]={}; int f(int n) { if(arr[n]!=0) { return arr[n]; } if(n==1) { return 1; } if(n==2) { return 2; } arr[n]=f(n-1)+f(n-2); return arr[n]; } int main(){ int n; scanf("%d",&n); printf("%d",f(n)%10007); return 0; } 이 코드가 틀렸다고 뜨네요. 혹시 어디서 틀렸는지 반례와 답정도만 알려주실 수 있을까요?ㅠㅠ
202
1
0
윈비
윈비·2023-05-05
백준 11726번 문제는 입력값 n이 주어졌을 때 2xn 직사각형을 채우는 방법의 수를 구하는 문제이므로 if문만을 사용하는 것이 아니라 동적으로 계산하기 위해 for와 같은 루프문이 필요합니다. 예를 들어, n이 3일 경우에는 2x3 직사각형을 채우는 방법의 수를 구해야 합니다. 이 경우에는 다음과 그림과  같이 총 3가지의 방법이 ...