LintCode 1917. 切割剩余金属

文章目录

    • 1. 题目
    • 2. 解题

1. 题目

描述

金属棒工厂的厂长拥有 n 根多余的金属棒。
当地的一个承包商提出,只要所有的棒材具有相同的长度(用 saleLength 表示棒材的长度),就将金属棒工厂的剩余棒材全部购买。
厂长可以通过将每根棒材切割零次或多次来增加可销售的棒材数量,但是每次切割都会产生一定的成本(用 costPerCut 表示每次切割的成本)。
等所有的切割完成以后,多余的棒材将被丢弃,没有利润。

金属棒工厂的厂长获得的销售总利润计算公式如下:

totalProfit = totalUniformRods * saleLength * salePrice - totalCuts * costPerCut

其中 totalUniformRods 是可销售的金属棒数量,
salePrice 是承包商同意支付的每单位长度价格,
totalCuts是需要切割棒材的次数。
在这里插入图片描述

样例 1
输入:
1
10
[30,59,110]
输出:
1913

https://www.lintcode.com/problem/cutting-metal-surplus/description

2. 解题

  • 暴力法
class Solution {
public:/*** @param costPerCut: integer cost to make a cut * @param salePrice: integer per unit length sales price * @param lengths: an array of integer rod lengths * @return: The function must return an integer that denotes the maximum possible profit. */int maxProfit(int costPerCut, int salePrice, vector<int> &lengths) {// write your code hereint maxprofit = 0, profit = 0;for(int L = 1; L <= 10000; ++L){profit = 0;for(auto l : lengths){int n = l/L;int cut = 0;if(l%L == 0)cut = n-1;elsecut = n;profit += n*salePrice*L - cut*costPerCut;}maxprofit = max(maxprofit, profit);}return maxprofit;}
};

101ms C++


我的CSDN博客地址 https://michael.blog.csdn.net/

长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!
Michael阿明

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

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

相关文章

太原理工电子信焦工程_电气工程及其自动化专业毕业后做什么工作?近几年就业和收入怎样...

本文内容为各大高校往届大学生真实的现身说法内容&#xff0c;但因为是往届&#xff0c;每年该专业的大学情况可能会发生略微变化&#xff0c;所以部分内容较今年&#xff0c;明年甚至以后几年&#xff0c;实际情况可能会略有不同但是对于本专业的相关信息还是非常有参考价值的…

js定时器和linux命令locate

js定时器如果带有参数&#xff0c;应该采用如下方式 setTimeout(function(){function(param)},1000); 匿名函数的方法。 linux locate基于数据库的查找方法。转载于:https://www.cnblogs.com/birdskyws/p/3974556.html

编程竞赛控制系统(PC2)使用说明书

编程竞赛控制系统(PC2)使用说明书 1. 系统简介 PC2是由美国加利福尼亚大学为国际大学生编程竞赛开发研制的竞赛控制系统。目前主要用于ACM/ICPC等国际编程竞赛。PC2最新的版本是8.5d&#xff0c;系统采用JAVA语言编写&#xff0c;可以运行在任何支持JAVA的平台(windows…

怎么查看linux日志里请求量最高的url访问最多的_实用的Linux高级命令,开发运维都要懂!...

在运维的坑里摸爬滚打好几年了&#xff0c;我还记得我刚开始的时候&#xff0c;我只会使用一些简单的命令&#xff0c;写脚本的时候&#xff0c;也是要多简单有多简单&#xff0c;所以有时候写出来的脚本又长又臭。像一些高级点的命令&#xff0c;比如说 Xargs 命令、管道命令、…

ggplot2箱式图两两比较_第十九章_使用ggplot2进行高级绘图

介绍ggplot2包使用形状、颜色和尺寸来对多元数据进行可视化用刻面图比较各组自定义ggplot2图19.1 R中的四种图形系统基础gridlatticeggplot2(用的较多)gghub需要的R包ggpolt2gridExtra(可以拼图)car19.2 ggplot2介绍library(ggplot2)ggplot(datamtcars, aes(xwt, ympg)) geom_p…

centos7 編譯 chmsee

安装libchm及相关的devel包&#xff0c;安装 xulrunner 及 devel 包&#xff01;否则后面make的时候会出错&#xff01; 到解压出来的chmsee/src目录下&#xff0c;找到与你系统对应的Makefile文件&#xff0c;我选的是Makefile.fedora&#xff0c;cp Makefile.fedora Makefile…

python调用cmd命令释放端口_详解python调用cmd命令三种方法

目前我使用到的python中执行cmd的方式有三种 使用os.system("cmd") 该方法在调用完shell脚本后,返回一个16位的二进制数,低位为杀死所调用脚本的信号号码,高位为脚本的退出状态码,即脚本中“exit 1”的代码执行后,os.system函数返回值的高位数则是1,如果低位数是0的情…

LeetCode 1742. 盒子中小球的最大数量

文章目录1. 题目2. 解题1. 题目 你在一家生产小球的玩具厂工作&#xff0c;有 n 个小球&#xff0c;编号从 lowLimit 开始&#xff0c;到 highLimit 结束&#xff08;包括 lowLimit 和 highLimit &#xff0c;即 n highLimit - lowLimit 1&#xff09;。 另有无限数量的盒子…

bash shell命令(1)

本文地址&#xff1a;http://www.cnblogs.com/archimedes/p/bash-shell1.html&#xff0c;转载请注明源地址。 ls命令 ls用来列出目录的内容&#xff0c;它是用户最常用的命令之一&#xff0c;ls命令的格式为&#xff1a; ls[选项][目录名或文件名] 选项的主要参数&#xff1a;…

activiti页面展示流程图乱码_activiti 5.17 流程图中文乱码问题

1. 流程图中任务中的中文乱码显示问题。解决方法&#xff1a;设置processEngineConfiguration中的两个字体属性&#xff0c;例如&#xff1a;。。。2. 流程图中TextAnnotation中的中文乱码显示问题。此乱码产生的原因是&#xff0c;负责画流程图的类DefaultProcessDiagramCanva…

python遍历文件夹下所有文件名中含有指定_Python 遍历目录找出包含指定字符串的文件夹...

题目&#xff1a;编写一个程序&#xff0c;能在当前目录以及当前目录的所有子目录下查找文件名包含指定字符串的文件&#xff0c;并打印出相对路径 题目不难&#xff0c;但是初接触Python&#xff0c;对函数不够熟悉&#xff0c;犯了不少错误。总结如下&#xff1a; os.path.is…

LeetCode 1743. 从相邻元素对还原数组(拓扑排序)

文章目录1. 题目2. 解题1. 题目 存在一个由 n 个不同元素组成的整数数组 nums &#xff0c;但你已经记不清具体内容。 好在你还记得 nums 中的每一对相邻元素。 给你一个二维整数数组 adjacentPairs &#xff0c;大小为 n - 1 &#xff0c;其中每个 adjacentPairs[i] [ui, v…

BP神经网络算法学习

BP&#xff08;Back Propagation&#xff09;网络是1986年由Rumelhart和McCelland为首的科学家小组提出&#xff0c;是一种按误差逆传播算法训练的多层前馈网络&#xff0c;是眼下应用最广泛的神经网络模型之中的一个。BP网络能学习和存贮大量的输入-输出模式映射关系&#xff…

phppage类封装分页功能_PHP封装的page分页类定义与用法完整示例

本文实例讲述了PHP封装的page分页类定义与用法。分享给大家供大家参考&#xff0c;具体如下&#xff1a;亲测有效&#xff0c;见下图>1. 测试实例test.phpheader("Content-Type: text/html; charsetutf-8");date_default_timezone_set("Asia/Shanghai")…

ms agent

Microsoft Agent是微软公司于1997年9月发布的一项代理软件开发技术&#xff0c;而后被集成到Internet Explorer 4.0 Plus及更高版本中&#xff0c;目前版本为2.0&#xff0c;支持简体中文。作为一种软件代理工具&#xff0c;Agent以其强大的交互功能、鲜明的人性特点、优美的操…

无向图的深度优先遍历非递归_【数据结构图(一)】什么是图

一、什么是“图”(Graph) 表示“多对多”的关系包含一组顶点&#xff1a;通常用 V (Vertex) 表示顶点集合一组边&#xff1a;通常用 E (Edge) 表示边的集合无向边&#xff1a;(v, w) 有向边&#xff1a;不考虑重边和自回路二、抽象数据类型定义类型名称&#xff1a;图(Graph)数…

LeetCode 1744. 你能在你最喜欢的那天吃到你最喜欢的糖果吗?(前缀和)

文章目录1. 题目2. 解题1. 题目 给你一个下标从 0 开始的正整数数组 candiesCount &#xff0c;其中 candiesCount[i] 表示你拥有的第 i 类糖果的数目。 同时给你一个二维数组 queries &#xff0c;其中 queries[i] [favoriteTypei, favoriteDayi, dailyCapi] 。 你按照如下…

wdcp-apache开启KeepAlive提高响应速度

因为我们的网站&#xff0c;媒体文件&#xff0c;js文件&#xff0c;css文件等都在同一个服务器上&#xff0c;并且&#xff0c;我们网站有非常多的图片&#xff0c;所以当建立好tcp链接之后&#xff0c;不应该马上关闭连接&#xff0c;因为每建立一次连接还要进行dns解析&…

python的指针跟c的区别_ctypes中的LP_x*指针和*p指针有什么区别?(以及与结构的奇怪交互)...

我很难理解Python ctypes中LP_*(例如LP_c_char)和*\u p(例如c_char_p)指针之间的区别。是否有文件区分它们&#xff1f;在我所读到的关于*\p指针的一些信息表明它们更好(以某种未指明的方式)&#xff0c;但是当我试图将它们用作结构字段时&#xff0c;我会得到奇怪的行为。例如…

爱斯基摩结构

“爱斯基摩结构”&#xff1a;狗拉雪橇是生活在北极圈的爱斯基摩人最重要的运载工具。怎样才能让狗多拉快跑&#xff1f;爱斯基摩人将狗分成两个层次&#xff0c;前面是一只领狗&#xff0c;后头有&#xff2e;只力狗。他们给领狗制造许多特权&#xff1a;它单独享用食品&#…