解题:USACO18FEB Taming the Herd
从零开始的DP学习系列之贰(我的DP真的就这么烂TAT)
设DP状态的另一个技巧,考虑题目中有关答案的各种信息
然后这种和结尾有关系的$dp$可以考虑向前找结尾来转移
设$dp[i][j]$表示到第$i$天为止,有$j$天有奶牛逃跑的最小不一致记录数。转移时枚举天数和逃跑天数,然后枚举一个前一个逃跑的天数$k$,从$dp[i-1][k]$以一个$dif[k+1][i]$的代价转移过来。其中$dif[i][j]$表示从第$i$天到第$j$天中与记录不一致的数目。这样直接做是$O(n^4)$的,不过这个$dif$显然可以$O(n^2)$预处理,然后时间复杂度就降到了$O(n^3)$
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const int N=;
int num[N],dif[N][N],dp[N][N],n;
int main ()
{
scanf("%d",&n);
for(int i=;i<=n;i++)
scanf("%d",&num[i]);
for(int i=;i<=n;i++)
{
int tmp=;
for(int j=i;j<=n;j++)
dif[i][j]=(tmp+=(num[j]!=j-i));
}
memset(dp,0x3f,sizeof dp); dp[][]=;
for(int i=;i<=n;i++)
for(int j=;j<=i;j++)
for(int k=;k<i;k++)
dp[i][j]=min(dp[i][j],dp[k][j-]+dif[k+][i]);
for(int i=;i<=n;i++)
printf("%d\n",dp[n][i]);
return ;
}
解题:USACO18FEB Taming the Herd的更多相关文章
- [USACO18FEB]Taming the Herd
Luogu4267 题解 对于\(dp[i][j]\) , 预处理出一些转移一步的次数 , 然后可以很方便的转移 : \(dp[i][j]=min(dp[k][j-1]+cnt[j][i])\)
- P4267 [USACO18FEB]Taming the Herd
说实话感觉不是一道蓝题--感觉挺水的,不过为了水题解,水题就够了(其实是觉得思考的过程比较典型,记录一下) 题解 刚开始看这道题感觉上没什么思路,但是我们可以先考虑用 \(O(n)\) 的时间去枚举发 ...
- BZOJ5196: [Usaco2018 Feb]Taming the Herd(DP暴力)
5196: [Usaco2018 Feb]Taming the Herd Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 78 Solved: 71[ ...
- 2019 GDUT Rating Contest II : A. Taming the Herd
题面: A. Taming the Herd Input file: standard input Output file: standard output Time limit: 1 second Me ...
- DP小题集
P2736 "破锣摇滚"乐队 Raucous Rockers 你刚刚继承了流行的"破锣摇滚"乐队录制的尚未发表的N(1 <= N <= 20)首歌的 ...
- USACO比赛题泛刷
随时可能弃坑. 因为不知道最近要刷啥所以就决定刷下usaco. 优先级排在学习新算法和打比赛之后. 仅有一句话题解.难一点的可能有代码. 优先级是Gold>Silver.Platinum刷不动. ...
- BZOJ5137: [Usaco2017 Dec]Standing Out from the Herd(广义后缀自动机,Parent树)
Description Just like humans, cows often appreciate feeling they are unique in some way. Since Farme ...
- SCNU ACM 2016新生赛决赛 解题报告
新生初赛题目.解题思路.参考代码一览 A. 拒绝虐狗 Problem Description CZJ 去排队打饭的时候看到前面有几对情侣秀恩爱,作为单身狗的 CZJ 表示很难受. 现在给出一个字符串代 ...
- SCNU ACM 2016新生赛初赛 解题报告
新生初赛题目.解题思路.参考代码一览 1001. 无聊的日常 Problem Description 两位小朋友小A和小B无聊时玩了个游戏,在限定时间内说出一排数字,那边说出的数大就赢,你的工作是帮他 ...
随机推荐
- 局域网arpspoof欺骗获取cookie/图片/密码
开启路由转发功能 查看IP转发功能是否打开 默认是不开起,0,我这里是修改后的,显示1. 修改转发功能,1为允许. 修改成功后再进行Arpspoof欺骗 如果开始劫持后,自己电脑无法联网了 ??? 检 ...
- Acer 4750G安装OS X 10.9 DP4(简版)
一.下载os x 10.9懒人版:http://bbs.pcbeta.com/viewthread-1384504-1-1.html 二.用系统自带的磁盘分区工具划分一个5G左右的临时安装盘(新建分区 ...
- Scrum Meeting 4 -2014.11.8
开始了apec的放假,希望大家能处理好工作与休息的时间分配,不要玩疯了啊. 各任务都开始实现了自己的算法,需要部署的服务器我也进去看了看情况,希望最后能部署成功. 最近发现的一些关于上一届实现的问题, ...
- 实验1 熟悉Linux开发环境 实验报告
参见http://www.cnblogs.com/lhc-java/p/4970269.html
- 第二阶段Sprint冲刺会议3
进展:讨论视频录制的具体功能,查看有关资料,开始着手编写有关代码.
- Task 6.4 冲刺Two之站立会议3
今天我参考各种聊天软件的主界面,仿照他们的形式对其中的界面和功能进行设置.重新完善了一下昨天完成的主要功能结构的框架.将各个功能按钮分别放到相应的位置,使界面看起来更加地合理,易于接受.
- Chapter 3 软件项目管理
软件项目具有产品的不可见性.项目的高度不确定性.软件过程的多变化性.软件人员的高流动性的显著特征.有效的软件项目管理集中于人员.产品.过程和项目四个方面.软件项目的生命周期有项目启动.项目规划.项目实 ...
- 2018软工实践—Beta冲刺(5)
队名 火箭少男100 组长博客 林燊大哥 作业博客 Beta 冲鸭鸭鸭! 成员冲刺阶段情况 林燊(组长) 过去两天完成了哪些任务 协调组内工作 协助数据库完善搭建 展示GitHub当日代码/文档签入记 ...
- HDU 3853 LOOPS 期望dp
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=3853 LOOPS Time Limit: 15000/5000 MS (Java/Others)Me ...
- Virtualbox+Ubuntu安装,VERR_VMX_MSR_ALL_VMX_DISABLED解决
学习链接:基于VirtualBox虚拟机安装Ubuntu图文教程--娄老师 启动虚拟机遇到的问题:BIOS中VT-x在所有CPU模式下被禁用(VERR_VMX_MSR_ALL_VMX_DISABLED ...