【BZOJ】1270 [BeijingWc2008]雷涛的小猫
2024-09-04 00:45:19
【算法】DP
【题解】f1[i]表示第i棵树当前高度能得到的最多果子数
f2[i]表示高度i能得到的最多果子数。
于是有:
f1[j]=max(f1[j],f2[i+delta])+mp[j][i];
f2[i]=max(f2[i],f1[j]);
注意i+delta的范围。
#include<cstdio>
#include<cctype>
#include<algorithm>
using namespace std;
const int maxn=;
int f1[maxn*],f2[maxn*],mp[maxn][maxn],n,h,delta;
int read()
{
char c;int s=;
while(!isdigit(c=getchar()));
do{s=s*+c-'';}while(isdigit(c=getchar()));
return s;
}
int main()
{
n=read(),h=read(),delta=read();
for(int i=;i<=n;i++)
{
int m,k;
m=read();
for(int j=;j<=m;j++)k=read(),mp[i][k]++;
}
for(int i=h;i>;i--)
{
for(int j=;j<=n;j++)
{
f1[j]=max(f1[j],f2[i+delta])+mp[j][i];
f2[i]=max(f2[i],f1[j]);
}
}
printf("%d",f2[]);
return ;
}
最新文章
- java工具类
- Python 比较两个字符串大小
- RichTextBox实现鼠标右键(剪切,复制,粘贴)功能
- 对 HTTP 304 的理解
- 【CSS学习笔记】CSS初始化
- iOS开发之Run Loop
- TensorFlow conv2d实现卷积
- MongoDB索引限制
- shell中的数字
- ThinkPHP5从零基础搭建CMS系统(一)
- 从壹开始前后端分离[.NetCore] 37 ║JWT完美实现权限与接口的动态分配
- linux环境部署python3+django
- 比较爬虫用的语言Python与Go
- mezzanine的page_menu tag(二)
- c#测试执行时间的方法
- spark优化:spark.serializer修改序列化方式
- Codeforces Round #372 (Div. 1) A. Plus and Square Root 数学题
- JDBC驱动程序类型
- 项目冲刺Beta第二篇博客
- Uedit个人专注
热门文章
- sql分页使用join提高性能
- .net 内置对象之Session对象和Session的过期时间
- 选择正确的C/C++ runtime library
- monitor_guiagent
- 【刷题】BZOJ 2038 [2009国家集训队]小Z的袜子(hose)
- [洛谷P5048][Ynoi2019模拟赛]Yuno loves sqrt technology III
- BZOJ5011 &; 洛谷4065 &; LOJ2275:[JXOI2017]颜色——题解
- 洛谷 P1363 幻想迷宫 解题报告
- 51nod 1275 连续子段的差异(twopointer+单调队列)
- [学习笔记]FFT——快速傅里叶变换