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; }