SGU 130 Circle(动态规划)

没什么好解释的了,直接动态规划。

水题一道居然因为没想到会爆int卡了半天,汗。。。

//SGU 130 Circle
//DP
//by night_watcher

#include<iostream>
#include<cstring>
using namespace std;

#define N 33

long long cnt[N];

int main(){
    int n,i,j;
    while(cin>>n){
           memset(cnt,0,sizeof(cnt));
           cnt[0]=1;
           for(i=1;i<=n;i++){
                  for(j=0;j<i;j++){
                         cnt[i]+=cnt[j]*cnt[i-j-1];
                  }
           }
           cout<<cnt[n]<<" "<<n+1<<endl;
    }
    return 0;
}


 

你可能感兴趣的:(SGU 130 Circle(动态规划))