fork download
  1. #include <bits/stdc++.h>
  2. #define ll long long int
  3. using namespace std;
  4. void catalan_comp(ll catalan[]){
  5. catalan[0]=1;
  6. catalan[1]=1;
  7. for(int i=2;i<1001;i++){
  8. catalan[i]=0;
  9. for(int j=0;j<i;j++){
  10. catalan[i]+=catalan[j]*catalan[i-1-j];
  11. }
  12. }
  13. }
  14. ll paranth_calc(int num,ll catalan[]){
  15. ll mod=1000000007;
  16. ll paranth=(catalan[num]%mod);
  17. return paranth;
  18. }
  19. int main() {
  20. // your code goes here
  21. int T;
  22. cin>>T;
  23.  
  24. ll catalan[1001];
  25. catalan_comp(catalan);
  26.  
  27. for(int t=1;t<=T;t++){
  28. int N;
  29. cin>>N;
  30. ll paranth_num;
  31. if(N%2!=0)
  32. {
  33. cout<<"-1"<<endl;
  34. continue;
  35. }
  36. else
  37. paranth_num=paranth_calc(N/2,catalan);
  38. cout<<paranth_num<<endl;
  39. }
  40. return 0;
  41. }
Success #stdin #stdout 0.01s 5508KB
stdin
Standard input is empty
stdout
Standard output is empty