1 solutions

  • 0
    @ 2025-11-5 20:15:20

    C :

    #include <stdio.h>
    #include <stdlib.h>
    
    /* run this program using the console pauser or add your own getch, system("pause") or input loop */
    int f(int n){
    	if(n==1){
    		return 1; 
    	}
    	if(n==2){
    		return 2;
    	}
    	if(n==3){
    		return 4;
    	}
    	if(n>3){
    		return f(n-1)+f(n-2)+f(n-3);
    	}
    }
    int main(int argc, char *argv[]) {
    	int n;
    	scanf("%d",&n);
    		printf("%d\n",f(n));
    	
    	return 0;
    }
    

    C++ :

    #include<iostream>
    #include<cstdio>
    #include<cstdlib>
    #include<cstring>
    using namespace std;
    int main ()
    {
     int i,m,n,j;
     long int a[1100];
     cin>>n;
     memset(a,0,sizeof(a));
     a[1]=1;a[2]=2;a[3]=4;
     for (i=4;i<=n;++i)
      a[i]=a[i-3]+a[i-2]+a[i-1];
     cout<<a[n];
     return 0;
    }
    

    Pascal :

    var f:array[1..1000] of longint;
        n,i:longint;
    begin
      readln(n);
      f[1]:=1; f[2]:=2; f[3]:=4;
      for i:=4 to n do
      f[i]:=f[i-1]+f[i-2]+f[i-3];
      write(f[n]);
    end.
    
    • 1

    Information

    ID
    20187
    Time
    1000ms
    Memory
    128MiB
    Difficulty
    (None)
    Tags
    # Submissions
    0
    Accepted
    0
    Uploaded By