2015年1月28日 星期三

TIOJ 1007 燈泡問題

#include <cstdio>
#include <cstdlib>
#include <algorithm>
using namespace std;
int main() {
    int n,m;
    long long int dp[2][17];
    scanf("%d %d",&n,&m);
    int now = 0,pre = 1;
    for (int i = 0; i < n+1; ++i)
       dp[now][i] = 1;
    dp[now][n+1] = 0;
    for(int k = 0; k < m; k++){
        swap(now, pre);
        dp[now][n+1] = 0;
        for (int i = 0; i <= n; ++i)
            dp[now][i] = dp[pre][i+1] + dp[pre][0];
        
    }
    printf("%lld\n",dp[now][0]);
    return 0;
}

沒有留言:

張貼留言