import java.util.*;
public class Main {
public static void main (String args[]) {
Scanner sc= new Scanner(System.in);
int N=sc.nextInt();
int[] dp= new int[N+1];
dp[0]=1;
System.out.print(ways(N,dp));
}
public static int ways(int N,int[] dp){
if(N<0){
return 0;
}
if(dp[N]!=0){
return dp[N];
}
int a=ways(N-1,dp);
int b=ways(N-3,dp);
int c=ways(N-4,dp);
dp[N]=(a+b+c);
return dp[N];
}
this code is notworking for all test cases??