백준 14495번 바로가기

나의 풀이

f = [1]*(n:=int(input()))

if n < 4:
  print(1)
else:
  for i in range(3,n):
    f[i] = f[i-1] + f[i-3]
  print(f[-1])

고수의 풀이

a=b=c=1
exec('a,b,c=b,c,a+c;'*(int(input())-3))
print(c)

출처

CODE REVIEW

  1. 피보나치 수열과 유사하게 코드를 작성하면 되지만, index에 유의해야 한다.
  2. 고수의 풀이를 보면 a,b,c=b,c,a+c처럼 작성하는 방법도 참고!