LeetCode 每日一题 Day 26 ||枚举

2735. 收集巧克力

给你一个长度为 n 、下标从 0 开始的整数数组 nums ,表示收集不同巧克力的成本。每个巧克力都对应一个不同的类型,最初,位于下标 i 的巧克力就对应第 i 个类型。

在一步操作中,你可以用成本 x 执行下述行为:

同时修改所有巧克力的类型,将巧克力的类型 ith 修改为类型 ((i + 1) mod n)th
假设你可以执行任意次操作,请返回收集所有类型巧克力所需的最小成本。

示例 1:
输入:nums = [20,1,15], x = 5
输出:13

解释:
最开始,巧克力的类型分别是 [0,1,2] 。我们可以用成本 1 购买第 1 个类型的巧克力。
接着,我们用成本 5 执行一次操作,巧克力的类型变更为 [1,2,0] 。我们可以用成本 1 购买第 2 个类型的巧克力。
然后,我们用成本 5 执行一次操作,巧克力的类型变更为 [2,0,1] 。我们可以用成本 1 购买第 0 个类型的巧克力。
因此,收集所有类型的巧克力需要的总成本是 (1 + 5 + 1 + 5 + 1) = 13 。可以证明这是一种最优方案。

示例 2:
输入:nums = [1,2,3], x = 4
输出:6

解释:
我们将会按最初的成本收集全部三个类型的巧克力,而不需执行任何操作。因此,收集所有类型的巧克力需要的总成本是 1 + 2 + 3 = 6 。

提示:

1 <= nums.length <= 1000
1 <= nums[i] <= 109
1 <= x <= 109

class Solution {
public:long long minCost(vector<int>& nums, int x) {int n = nums.size();vector<long long> s(n);for (int i = 0; i < n; i++) {s[i] = (long long)i * x;}for (int i = 0; i < n; i++) {int mn = nums[i];for (int j = i; j < n + i; j++) {mn = min(mn, nums[j % n]);s[j - i] += mn;}}return *min_element(s.begin(), s.end());}
};

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

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

相关文章

《深入理解C++11:C++11新特性解析与应用》笔记四

第四章 新手易学&#xff0c;老兵易用 4.1 右尖括号>的改进 在 C98 中&#xff0c;有一条需要程序员规避的规则:如果在实例化模板的时候出现了连续的两个右尖括号 >&#xff0c;那么它们之间需要一个空格来进行分隔&#xff0c;以避免发生编译时的错误。C98 会将>&g…

ubuntu22下安装minconda

bing 搜索 canda install 找到官方网站 https://docs.conda.io/projects/miniconda/en/latest/ 这里我们安装minconda。 官网有安装方法。 mkdir -p ~/miniconda3 wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda3/miniconda.sh…

makefile快速入门(精简版)

WHAT Makefile 是一种文本文件&#xff0c;由一系列规则&#xff08;Rules&#xff09;组成&#xff0c;每个规则描述了一个或多个目标&#xff08;Target&#xff09;和相应的依赖关系&#xff08;Dependencies&#xff09;&#xff0c;以及构建目标所需的命令&#xff08;Com…

【K8S 二进制部署】部署单Master Kurbernetes集群

目录 一、基本架构和系统初始化 1、集群架构&#xff1a; 2、操作系统初始化配置&#xff1a; 2.1、关闭防火墙和安全机制&#xff1a; 2.2、关闭swap 2.3、根据规划设置主机名 2.4、三台主机全部互相映射 2.5、调整内核参数 3、时间同步&#xff08;所有节点时间必须同…

Linux系列之不解压直接查看gzip压缩日志

Linux系列之不解压直接查看gzip压缩日志文件 在Linux服务器上&#xff0c;日志文件经常会用gzip格式进行压缩&#xff0c;以节省磁盘&#xff0c;对于这种压缩文件&#xff0c;需要解压&#xff1f;然后再用cat、grep这些命令进行查看&#xff1f;其实不需要&#xff0c;Linux…

Vue解决跨域问错误:has been blocked by CORS policy 后端跨域配置

解决跨域问题后端跨域配置代码&#xff1a; /*** 作者 hua* 描述 跨域配置*/ Configuration public class WebConfiguration implements WebMvcConfigurer {/*** 跨域配置对象* return CorsConfiguration对象*/private CorsConfiguration corsConfig() {CorsConfiguration cor…

考研结束,以下事情要抓紧做了!

Hello&#xff0c;大家好&#xff0c;我是 Sunday。 首先恭喜大家考研结束&#xff0c;也在这里祝各位考研的同学们可以 成功上岸 ✿✿ヽ(▽)ノ✿。 不过&#xff0c;考试结束并不是一个终点&#xff0c;而是另外一个新的起点。摆在大家面前的&#xff0c;还有很多新的问题&a…

百度CTO王海峰:飞桨开发者已达1070万

目录 写在前面 飞桨开发者已达1070万 文心一言用户规模破亿&#xff0c;日提问量快速增长 写在前面 “文心一言用户规模突破1亿。”12月28日&#xff0c;百度首席技术官、深度学习技术及应用国家工程研究中心主任王海峰在第十届WAVE SUMMIT深度学习开发者大会上宣布。会上&…

北航人机交互复习

人机交互 根据学过的内容&#xff0c;说明我们为什么要研究人机交互 人机交互需求推动&#xff1a;追求高效、安全、舒适、准确人机交互产业推动&#xff1a;相关产业发展&#xff0c;技术发展使幻想变为可能&#xff0c;譬如&#xff0c;苹果人机交互界面开发技术推动&#…

面试算法76:数组中第k大的数字

题目 请从一个乱序数组中找出第k大的数字。例如&#xff0c;数组[3&#xff0c;1&#xff0c;2&#xff0c;4&#xff0c;5&#xff0c;5&#xff0c;6]中第3大的数字是5。 分析 面试题59中介绍过一种基于最小堆的解法。这种解法的数据位于一个数据流中&#xff0c;不能一次…

【AIGC_MIDJOURNEY】专业提示词+配图分析

prompt : landscape of beautiful forest, lush foliage and water falls, crystal clear lake, fire flies, twinkling lights , rococo, art nouveau, --ar 16:9 这个提示词描述了一个美丽的森林景观&#xff0c;包括茂密的植被和瀑布&#xff0c;清澈见底的湖泊&#xff0c;…

干货!一文详解车间管理的五大基本方法

车间管理是制造型企业生产过程中的重要环节&#xff0c;它直接影响着企业的生产效率、成本控制、产品质量以及员工的士气与工作效率。优秀的车间管理不仅能够提升产品的质量和生产力&#xff0c;还能降低运营成本&#xff0c;从而在激烈的市场竞争中为企业赢得优势。 为了帮助…

Java 通过 filter 过滤器对请求参数进行处理并修改

通过 filter 过滤器对请求参数进行处理并修改 问题描述&#xff1a;解决方案1、重写 HttpServletRequestWrapper 类2、新增过滤器 问题描述&#xff1a; 通过过滤器&#xff0c;对前端请求过来的参数进行处理&#xff08;本次是对请求参数进行前后空格的去除&#xff09;&…

vue3-13

token可以是后端api的访问依据&#xff0c;一般绝大多数时候&#xff0c;前端要访问后端的api,后端都要求前端请求需要携带一个有效的token,这个token用于用户的身份校验&#xff0c;通过了校验&#xff0c;后端才会向前端返回数据&#xff0c;进行相应的操作&#xff0c;如果没…

Linux的LVM与磁盘配额

一.LVM 1.什么是LVM Logical Volume Manager 逻辑卷管理 能够在保持现有数据不变的情况下&#xff0c;动态调整磁盘容量&#xff0c;从而提高磁盘管理的灵活性 /boot 分区用于存放引导文件&#xff0c;不能基于LVM创建 解释&#xff1a;就是将多个不同的物理卷组合在一起形…

C++设计模式代码--单例模式

参考&#xff1a;5. 单例模式&#xff08;Singleton&#xff09; (yuque.com) 1、什么是单例模式 保证一个类只有一个实例&#xff0c;并提供一个访问该实例的全局节点&#xff1b; 2、什么情况下需要单例模式 某个类的对象在软件运行之初就创建&#xff0c;并且在软件的很…

Python高级用法:迭代器(iter)

迭代器 迭代器是一个实现了迭代器协议的容器对象。它基于以下两个方法。 __ next __&#xff1a;返回容器的下一个元素。 __ iter __&#xff1a;返回迭代器本身 迭代器可以利用内置的iter函数和一个序列来创建, 假设我们的序列为[1, 2, 3],迭代器创建过程如下&#xff1a; i…

读取无标题列表txt文本文件

文件如下&#xff1a; 使用pandas直接读取&#xff0c;有多少条数据&#xff0c;就会读出来多少列&#xff1a; import pandas as pdfilepath/Users/。。。/ file1失败名单.txt df1pd.read_csv(filepathfile1,sep,,headerNone) 会打印出无数列数据&#xff1a; 使用open方法读…

3. SQL - 查询

1.SQL-单表查询 1.1 DQL准备工作 #创建商品表: create table product( pid int primary key, pname varchar(20), price double, category_id varchar(32) ); INSERT INTO product(pid,pname,price,category_id) VALUES(1,联想,5000,c001); INSERT INTO product(pid,pname,p…

31.Java程序设计-基于Springboot的鲜花商城系统的设计与实现

引言 背景介绍&#xff1a;鲜花商城系统的兴起和发展。研究目的&#xff1a;设计并实现一个基于Spring Boot的鲜花商城系统。论文结构概述。 文献综述 回顾相关鲜花商城系统的设计与实现。分析不同系统的优缺点。强调Spring Boot在系统设计中的优越性。 系统设计 需求分析 用户…