【2018.4.14】模拟赛之四-ssl2394 剪草【dp】

正题


大意

有n株草,没个时间单位开始时会增长不同的长度。每个时间单位可以将一株草剪成高度为0,求多少时间单位后能够将草的总高度减低为h以下,或用远不能。


解题思路

首先需要一段玄学推理:
可以等草长高些在剪。
如果有解每个草最多只需要剪一次,因为如果要剪两次那么你可以在第一次的时候不用剪。
然后假设每一个草都要剪一次,那么肯定先剪长得慢的,因为等你剪后面的时候这个草又会飞快的长起来。

然后就可以用dp了,先按照长得速度排序。然后用f[i][j]f[i][j]表示前i株长到第j秒时的最小长度。然后假设在k秒的时候能结束那么f[i1][j]+h[i]+grow[i]kf[i−1][j]+h[i]+grow[i]∗k表示不剪这株,f[i1][j1]+grow[i](kj)f[i−1][j−1]+grow[i]∗(k−j)表示剪掉这株草。但是我们现在不知道k所以我们要枚举一下。动态转移方程:

f[i][j]=min(f[i1][j]+h[i]+grow[i]k,f[i1][j1]+grow[i](kj))f[i][j]=min(f[i−1][j]+h[i]+grow[i]∗k,f[i−1][j−1]+grow[i]∗(k−j))


代码

#include<cstdio>
#include<iostream>
#include<algorithm>
using namespace std;
int n,hight,h[51],grow[51],f[51][51];
int main()
{scanf("%d%d",&n,&hight);for (int i=1;i<=n;i++) scanf("%d",&h[i]);for (int i=1;i<=n;i++) scanf("%d",&grow[i]);for (int i=1;i<n;i++)for (int j=i+1;j<=n;j++)if (grow[j]<grow[i]) {swap(grow[i],grow[j]);swap(h[i],h[j]);}for (int k=0;k<=n;k++){memset(f,127/3,sizeof(f));f[0][0]=0;for (int i=1;i<=n;i++)f[i][0]=f[i-1][0]+h[i]+grow[i]*k;for (int i=1;i<=n;i++)for (int j=1;j<=k;j++)f[i][j]=min(f[i-1][j]+h[i]+grow[i]*k,f[i-1][j-1]+grow[i]*(k-j));if (f[n][k]<=hight){printf("%d",k);return 0;}}printf("-1");
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/324427.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

“桌面日历”记录的事件居然是看某某视频……

某年某月某下午&#xff0c;正在激情澎湃的在讲台上讲课&#xff0c;忽发现医学生缓缓的将右手举起来&#xff0c;见状&#xff0c;不用想&#xff0c;他一定有问题&#xff0c;嗯……要问我。于是&#xff0c;紧走几步下去&#xff0c;问他怎么了&#xff0c;他说他的某某功能…

开源个.NetCore写的 - 并发请求工具PressureTool

本篇和大家分享的是一个 并发请求工具&#xff0c;并发往往代表的就是压力&#xff0c;对于一些订单量比较多的公司这种情况很普遍&#xff0c;也因此出现了很多应对并发的解决方案如&#xff1a;分布式&#xff0c;队列&#xff0c;数据库锁等&#xff1b; 对于没有遇到过或者…

浅析DNS域名解析过程

转载自 浅析DNS域名解析过程 对于每一个HTTP请求发起过程中&#xff0c;都有很重要的一个步骤——DNS解析&#xff0c;本篇文章将跟着DNS解析过程来分析域名是如何解析的。 一、DNS域名解析步骤 下图是DNS域名解析的一个示例图&#xff0c;它涵盖了基本解析步骤和原理。 下…

ssl初一组周六模拟赛【2018.4.14】

前言 先说一下成绩&#xff1a; 姓名成绩xjq190wyc170hzb160lrz140hjq80lw70xxy60zyc40 正题 题目1&#xff1a;ssl2391 数列 被数据坑了 链接&#xff1a; https://blog.csdn.net/mr_wuyongcong/article/details/79939709 题目2&#xff1a;ssl2392 蚂蚁【图论】 代码极…

最好的方法,是为你们量身定制!

昨天还和佟老师在讨论3班的学习情况&#xff0c;整体来说&#xff0c;学习氛围还是比较好的。由于近几天各种事纠结在一块儿&#xff0c;本来想给三班的学生制作一个提升计划&#xff0c;一直都腾不出来手。今天&#xff0c;终于抽了一点点时间&#xff0c;在原来互帮互助计划的…

Entity Framework Core 命名约定

注意&#xff1a;我使用的是 Entity Framework Core 2.0 (2.0.0-preview2-final)。正式版发布时&#xff0c;功能可能存在变动。Entity Framework 迁移允许从模型生成数据库&#xff0c;这意味着必须从类名和属性名生成数据库对象的名称。对于大多数人来说使用默认名称是没有问…

ZOJ1654-Place the Robots【最大匹配,图论】

正题 大意 一个n*m个地方&#xff0c;有墙&#xff0c;草地和空地。在空地可以放机器人&#xff0c;机器人会将看到的其他机器人 [河蟹] 掉。他不能隔墙看。求最多能放多少个机器人。 解题思路 这里用一种奇特的构图方法&#xff0c; &#xff08;盗一下ppt里的图&#xff0…

彻底理解JVM常考题之分级引用模型

转载自 彻底理解JVM常考题之分级引用模型 本文通过探析Java中的引用模型&#xff0c;分析比较强引用、软引用、弱引用、虚引用的概念及使用场景&#xff0c;知其然且知其所以然&#xff0c;希望给大家在实际开发实践、学习开源项目提供参考。 Java的引用 对于Java中的垃圾…

越优秀的人越努力,越努力的人越幸运!

昨日晚间&#xff0c;学校值班&#xff0c;在楼道里面巡查几遍之后发现无异常情况&#xff0c;接着就去值班室中打开电脑忙自己的事。过了没一会儿&#xff0c;3班三学生去找我了&#xff0c;对我说&#xff0c;最近班里的学习情况不是太好&#xff0c;部分学生上课容易打盹&am…

SOA和微服务之间的区别

近几年&#xff0c;我们有很多文章对SOA和微服务之间的不同点和相似点进行了分析。有些人认为SOA有很多地方是值得微服务学习的&#xff0c;而有些人则认为区别对待微服务和SOA会更好。而Neal Ford认为&#xff0c;将单体迁移到面向服务的架构要比迁移到微服务来得容易。关于选…

vijos1056-图形面积【离散化】

正题 题目链接&#xff1a;https://vijos.org/p/1056 大意 给出几个矩形的左上坐标和右下坐标求所有矩形覆盖了的总面积。 解题思路 就是一个简单的离散而已。 代码 #include<iostream> #include<algorithm> using namespace std; long long xx[201],yy[201],l…

考研生的努力程度是有多恐怖!

2021年全国研究生招生考试在12月26日开始&#xff0c;不过我没有参加。早就听闻考研生是多么多么的努力&#xff0c;今日一见&#xff0c;果然名不虚传&#xff0c;在这之前他们是有多努力我不知道&#xff0c;但是今天我所见到他们努力的程度&#xff0c;可以用恐怖来形容。偶…

设计数据库表时,你真的会选数据类型吗

转载自 设计数据库表时&#xff0c;你真的会选数据类型吗 关系型数据库&#xff0c;是开发人员最常接触的持久化存储之一了&#xff0c;使用关系型数据库有很多好处&#xff0c;比如支持通过事务处理保持数据的一致性、数据更新的开销很小、可以进行Join等复杂查询等。 同时…

全文索引 - Pomelo.EFCore.MySql

背景 全文索引&#xff1a;MySQL全文检索是利用查询关键字和查询列内容之间的相关度进行检索&#xff0c;可以利用全文索引来提高匹配的速度。Pomelo.EntityFrameworkCore.MySql&#xff1a;一款第三方MySQL的Entity Framework Core驱动&#xff0c;在GitHub中开源&#xff0c…

ssl2124-涂色【离散化】

正题 大意 又一根长1000000000的棍子&#xff0c;开始时全是白色&#xff0c;进行n此染色操作&#xff0c;求最长的白色区域。 解题思路 #include<cstdio> #include<iostream> #include<algorithm> using namespace std; int f[20001]; int ex,ey,a[5001],…

“老师,为什么我一上课就感到困,听课听的总是走神?”

“老师,为什么我一上课就感到困,听课听的总是走神?” “老师,为什么我你讲的每个题我都能听明白,但是让我自己做我就一点思路都没有呢?” “老师,我记下来语法了,但是还是不会用怎么办?” “老师,我……” 怎么办?怎么办?急死了! 今天老师就给你解答一下你的为什么…