VIJOS-P1232 核电站问题

VIJOS-P1232 核电站问题

JDOJ 1373

https://neooj.com/oldoj/problem.php?id=1373

题目描述

        一个核电站有N个放核物质的坑,坑排列在一条直线上。如果连续M个坑中放入核物质,则会发生爆炸,于是,在某些坑中可能不放核物质。         现在,请你计算:对于给定的N和M,求不发生爆炸的放置核物质的方案总数。

输入

输入文件只有一行,两个正整数N,M。

输出

输出文件只有一个正整数,表示方案总数。

样例输入

4 3

样例输出

13

提示

全部数据n< =50,m< =5 

 

Code:

#include<bits/stdc++.h>
using namespace std;
long long f[100];
int main()
{
    int n,m;
    f[0]=1;
    scanf("%d%d",&n,&m);
    for(int i=1;i<=n;i++)
    {
        if(i<m)
            f[i]=2*f[i-1];
        if(i==m)
            f[i]=2*f[i-1]-1;
        if(i>m)
            f[i]=2*f[i-1]-f[i-m-1];
    }
    printf("%lld",f[n]);
    return 0;
}

 

posted @ 2019-07-10 13:23  Seaway-Fu  阅读(149)  评论(0编辑  收藏  举报