链接:

http://codeforces.com/problemset/problem/478/D

题意:

给出r个红砖,g个绿砖,问有多少种方法搭成最高的塔。

题解:

举红色球的层数,当第i层为红色是,i层上面有[0,r]个 红色的,可推出dp[i+j]=dp[i+j]+dp[j],最后

再统计红色的个数就行了,红色最少为max(h*(h+1)/2-g,0)。

代码:

31 int dp[MAXN];
32
33 int main() {
34     ios::sync_with_stdio(false), cin.tie(0);
35     int r, g;
36     cin >> r >> g;
37     int s = r + g;
38     int h = sqrt(s * 2);
39     while (h*(h + 1) / 2 > s) h--;
40     dp[0] = 1;
41     rep(i, 1, h + 1) per(j, 0, r + 1)
42         dp[i + j] = (dp[i + j] + dp[j]) % MOD;
43     int ans = 0;
44     rep(i, max(h*(h + 1) / 2 - g, 0), r + 1) ans = (ans + dp[i]) % MOD;
45     cout << ans << endl;
46     return 0;
47 }

转载于:https://www.cnblogs.com/baocong/p/7345278.html

Codeforces Round #273 (Div. 2) D. Red-Green Towers DP相关推荐

  1. 贪心 Codeforces Round #273 (Div. 2) C. Table Decorations

    题目传送门 1 /* 2 贪心:排序后,当a[3] > 2 * (a[1] + a[2]), 可以最多的2个,其他的都是1个,ggr,ggb, ggr... ans = a[1] + a[2]; ...

  2. Codeforces Round #585 (Div. 2) E. Marbles 状压dp + 逆序对

    传送门 文章目录 题意: 思路: 题意: 思路: 考虑数列最终的状态一定是相同颜色在一起,所以我们发现他的颜色是有顺序的!显然可以用状压dpdpdp来枚举颜色的顺序,但是又有问题了,你怎么确定当前这个 ...

  3. Codeforces Round #268 (Div. 1) C. Hack it! 数位dp + 构造数位

    传送门 文章目录 题意: 思路: 题意: 定义f(x)f(x)f(x)表示xxx的十进制下数位和,现在给你aaa,让你选一个区间[l,r][l,r][l,r],满足∑i=lrf(i)moda=0\su ...

  4. Codeforces Round #741 (Div. 2) E. Rescue Niwen! 字符串 + dp

    传送门 文章目录 题意: 思路: 题意: 给你一个串sss,定义其扩张串为s1,s1s2,...,s1s2..sn,s2,s2s3,...,sns_1,s_1s_2,...,s_1s_2..s_n,s ...

  5. Codeforces Round #740 (Div. 2) D2. Up the Strip dp + 分块优化 + 逆向思维

    传送门 文章目录 题意: 思路 题意: 有nnn个细胞,你初始在第nnn细胞上,假设你当前在xxx处,你每次可以进行如下两个操作: (1)(1)(1)选择[1,x−1][1,x-1][1,x−1]内一 ...

  6. Codeforces Round #727 (Div. 2) E. Game with Cards dp + 思维

    传送门 文章目录 题意: 思路: 题意: 初始有左右手,上面各有一个数字为000的卡牌,每次都有一个新卡kik_iki​,你可以将其放在左手或者右手,使两只手上的卡片范围在[ll,i,rl,i][l_ ...

  7. Codeforces Round #462 (Div. 2) C. A Twisty Movement dp + 思维转换

    传送门 文章目录 题意: 思路: 题意: 给你一个长度为nnn的只包含1,21,21,2的序列aaa,你可以至多翻转一段区间,求翻转之后最长非递减子序列是多长. 思路: 考虑如果翻转的话,翻转的子区间 ...

  8. Codeforces Round #630 (Div. 2) F. Independent Set 树形dp

    传送门 文章目录 题意: 思路: 题意: 给你一棵树,求这棵树的边导出子图中独立集的数量和,独立集大小可以为000. 思路: 先考虑普通的独立集数量怎么求,无非就是分情况讨论一下选根还是不选根,而这个 ...

  9. Codeforces Round #265 (Div. 1) C. Substitutes in Number dp

    题目链接: http://codeforces.com/contest/464/problem/C J. Substitutes in Number time limit per test 1 sec ...

  10. Codeforces Round #355 (Div. 2) D. Vanya and Treasure dp+分块

    题目链接: http://codeforces.com/contest/677/problem/D 题意: 让你求最短的从start->...->1->...->2->. ...

最新文章

  1. SVN地址正确,能在网页打开,但是检出失败解决方法
  2. 牡丹江2021高考成绩查询,2020年黑龙江牡丹江成人高考成绩查询入口(已开通)...
  3. Linux实用快捷键
  4. 2008_12_24_星期三
  5. C++用并查集Disjoint union实现connected component连通分量(附完整源码)
  6. 一个线程资源中有多个模态对话框的问题
  7. 走出海量数据及访问量压力困境
  8. python size和count_groupby 的妙用(注意size和count)
  9. jquery 获取同级元素_如何在jQuery中获取元素的同级
  10. nginx图片缓存服务器配置实战
  11. springboot处理静态资源
  12. Java贪吃蛇游戏开发
  13. 文档管理专家Aspose 2017年首季更新大合集
  14. c语言编写dnf辅助,DNF辅助脚本怎么制作?游戏简易脚本制作教程
  15. node.js 抓取全国区域代码、邮政编码、电话区号
  16. Python网络爬虫(2)- 爬虫翻译程序-含有道、金山、百度翻译
  17. ThinkBook 14 G2 ITL 重装系统 笔记
  18. 可视化拖拽组件库一些技术要点原理分析(三)
  19. linux环境下GXL软件的安装
  20. 百度地图API根据经纬度绘制轨迹图(Vue附源码)

热门文章

  1. 178. Rank Scores
  2. 硬盘数据恢复的神器有哪些
  3. mysql如何把一个表直接拷贝到一个新的表
  4. Android aidl Binder框架浅析
  5. [AlwaysOn Availability Groups]排查:AG配置
  6. Log4j和Slf4j的比较
  7. tomcat构建及session保持
  8. 排序----在线性时间内排序
  9. Android应用开发提高篇(1)-----获取本地IP
  10. 全面分析网络安全防御