ural1017 Staircases (动态规划)
来源:互联网 发布:狗狗用品专卖店淘宝 编辑:程序博客网 时间:2024/04/27 20:30
设dp[i][j]表示使用i个砖块,最后一个台阶的方块数量为j的不同方案数(先不考虑条件Every staircase consists of at least two steps)
那么状态转移方程即为dp[i][j] = ∑dp[i-j][k] (0 <= k <= min{i - j, j - 1})
最后考虑每个楼梯都必须包含至少两层,这时只需要最终答案减1便可
#include <bits/stdc++.h>using namespace std;typedef long long LL;const int N = 505;LL dp[N][N];int main() { int n; scanf("%d", &n); memset(dp, 0, sizeof(dp)); dp[0][0] = 1; for (int i = 1; i <= n; i++) { for (int j = 1; j <= i; j++) { for (int k = 0; k <= min(i - j, j - 1); k++) { dp[i][j] += dp[i-j][k]; } } } LL ans = 0; for (int i = 0; i <= n; i++) ans += dp[n][i]; printf("%lld\n", ans - 1); return 0;}
0 0
- ural1017 Staircases (动态规划)
- URAL 1017|Staircases|动态规划
- UVa - 1017. Staircases 动态规划法 题解
- 动态规划-ZOJ 1 163 THE STAIRCASES
- zoj 1163 The Staircases 动态规划(dp)
- ural1017
- Ural1017
- Staircases
- Staircases
- Ural1017(DP)
- 动态规划!!!动态规划!!!
- 动态规划
- 动态规划
- 动态规划
- 动态规划
- 动态规划
- 动态规划
- 动态规划
- WinSCP命令行操作
- M上第一次开机默认打开数据开关
- Java 容器 & 泛型:二、ArrayList 、LinkedList和Vector比较
- linux系统安装gem5模拟器
- 蓝桥杯——递归三:递归的一些实际应用(2017.2.22)
- ural1017 Staircases (动态规划)
- 谁是卧底
- HM编码器代码阅读(44)——样点自适应补偿SAO(三)选取最优的SAO模式并确定补偿值
- Android两种播放视频的方法(SurfaceView+MediaPlayer+SeekBar)跟(VideoView+MediaController)
- 信道效率以及信道的吞吐率
- 42:String to Integer (atoi)
- Only the original thread that created a view hierarchy can touch its views.
- leetcode 412 python
- java中初始化顺序