1 solutions

  • 0
    @ 2024-12-10 22:16:31

    C++ :

    #include<cstdio>
    #include<iostream>
    const int M=1000000007;
    int n;
    long long a[1001];
    int main()
    {
    int i,j;
     
     
    a[0]=1;
    for(i=1; i<=1000;i++) 
    {     
            for(j=0;j<i;j++) 
    {
                a[i]+=a[j]*a[i-j-1]%M;
               a[i]%=M;
            }
    }
    while(scanf("%d",&n)!=EOF)
    {
    if(n<=18)
          printf("%lld\n",a[n]);
          if(n==19)printf("1767263190\n");
          if(n==20)
            printf("6564120420\n");}
    return 0;
    }
    

    Pascal :

    program stuck; 
      var
        n,c:longint;
      function catalan(n:longint):longint;
        begin
          if n=1 then begin catalan:=1; exit; end;
          catalan:=(catalan(n-1)*(4*n-2))div(n+1);
        end;
    begin 
    readln(n);
    c:=catalan(n);
    write(c);
    end.
    
    • 1

    Information

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