1793번

· 백준
코드 def dp_tile(n): if n == 0 or n == 1: return 1 # 이 부분이 이해가 안됨. n=0일 때는 0이 아니라 1인 이유 n_cnt = [0]*(n+1) n_cnt[1], n_cnt[2] = 1, 3 for i in range(3, n+1): n_cnt[i] = n_cnt[i-1]+n_cnt[i-2]+n_cnt[i-2] # 2x2를 채울 때는 방법이 2가지이므로 2번 더해줌 return n_cnt[n] while True: try: x = int(input()) print(dp_tile(x)) except: break 주석에서도 말했지만 n이 0이거나 1일 때 return n을 썼다가 틀렸다. n = 0일 때 채우지 않는 것도 하나의 방법이라는데 매우 모호한 듯. 1x2를..