@lim=(7+1e9).to_i @memo={} def calc(x) return 1 if x<=1 return 2 if x==2 @memo[x]=(calc(x-3)%@lim+calc(x-2)%@lim)%@lim if !@memo[x] return @memo[x] end p calc(gets.to_i)