Ruby, 97 bytes
->n{c=!r=[1,1] (2...n).map{|i|c|=1>n%i r=[0,*r,0].each_cons(2).map{|a,b|a+b}}.flatten&[n]==[]&&c} I'm sure it can be made smaller.
->n{c=!r=[1,1] (2...n).map{|i|c|=1>n%i r=[0,*r,0].each_cons(2).map{|a,b|a+b}}.flatten&[n]==[]&&c} I'm sure it can be made smaller.