SMALL
안녕하세요 오늘은 계차수열 관련된 문제를 코드로 풀어볼 것입니다.
코드:
#include <stdio.h>
int F(int k, int n){
int result = 0;
if(k==0){
return n;
}
else{
for(int i = 1; i<=n; i++){
result += F(k-1, i);
}
return result;
}
}
int main(){
int a;
scanf("%d",&a);
for(int i = 0; i<a; i++){
int n, k;
scanf("%d %d",&k,&n);
printf("%d\n",F(k,n));
}
return 0;
}
코드설명:
사용자 함수 F(k, n)을 만들었습니다. F(k, n)은 k층의 n호에 몇명이 사는지 알려주는 함수입니다. 우선은 0층일때, 즉 k가 0일때는 n호에는 무조건 n명이 있으므로 k가 0일때는 n으로 return해줍니다. 그리고 k가 0보다 클때는 재귀함수를 이용하여 k-1의 1호부터 n호까지의 합을 대입해줌으로 F(k, n)함수가 완성됩니다.
주요 개념: 재귀함수
LIST
'BOJ 문제풀이' 카테고리의 다른 글
백준 11022번 C언어 풀이 (0) | 2021.07.09 |
---|---|
백준 1002번 C 언어 풀이 (0) | 2021.07.08 |
백준 10171번 파이썬 풀이 (0) | 2020.07.13 |
백준 10718번 파이썬 풀이 (0) | 2020.07.13 |
백준 2557번 파이썬 풀이 (0) | 2020.07.13 |