활동 내용
해결할 문제: 2×n 타일링 문제
2×n 타일링 문제는 2×n 크기의 직사각형을 2×1 크기의 타일로 채우는 방법의 수를 구하는 문제이다. 2×2 크기의 직사각형은 다음과 같은 두 가지 방법으로 채울 수 있다
주어진 n에 대해 2×n 직사각형을 채우는 방법의 수를 구해야 한다. 점화식 T(n)=T(n−1)+T(n−2)를 구현해야 한다.
#include <stdio.h>
int tile(int n) {
if (n == 0) return 1;
if (n == 1) return 1;
int dp[n+1];
dp[0] = 1;
dp[1] = 1;
for (int i = 2; i <= n; i++) {
dp[i] = dp[i-1] + dp[i-2];
}
return dp[n];
}
int main(void) {
int n;
scanf("%d", &n);
printf("%d\\n", tile(n));
}
Python에서는 변수를 선언할 때 자료형을 명시할 필요가 없다. 변수에 값을 할당하면 자동으로 자료형이 결정된다.
#파이썬 주석은 #사용한다.
x = 10 # 정수형 변수
y = 3.14 # 실수형 변수
name = "Python" # 문자열 변수
is_valid = True # 불리언 변수
Python에서는 다양한 연산자를 제공한다. 대표적인 연산자는 다음과 같다:
+
, ,
, /
, //
, %
, *