蓝桥杯刷题第七天

       这道题一开始看真的有点简单,但一开始跟着案例先入为主了,误以为是只有两个项目想着穷举完n个人,(n+1)*(n+2)/2种情况但后面发现项目不止两个,用链表来好像我也不会,用二维矩阵好像也表示不完,然后想了一会就想到了贪心,项目按照每个人依次来选项目,所以最多是两层循环n(人)*m(项目)的复杂度,用一个变量记录项目多一个人的涨幅,每轮循环中涨幅最多的就把这个人安排在这个项目,当遍历完n个人即可获得最优解。

下面是我的解法由于没有优化以及剪枝,所以只过了一半以上案例,其余都超时了,明天得看看官方解法来进行学习,整理成自己的思路来重新敲。

ps:但敲得过程中我发现,得先在草稿纸上理清思路再敲不然边敲边想会很容易走神,发呆。(明天试试)

import java.util.*;
public class Main {public static void main(String []args) {Scanner a = new Scanner(System.in);int num = a.nextInt();int n = a.nextInt();int []b = new int[n+1]; //每个项目的B值int []k = new int[n+1]; //每个项目的K值int []nu = new int[n+1];//每个项目有多少人玩int []z = new int[n+1];//每个项目最高能花多少钱int max =0;//最多赚多少钱for(int i=1;i<=n;i++) {k[i] = a.nextInt();b[i] = a.nextInt();nu[i] = 0;}int flag1 ;//门票钱int flag;//每轮比上一轮多的钱(涨幅)boolean tap;for(int j=1;j<=num;j++) {//num个人每个人参加哪个项目(贪心)int max1 = 0;//涨幅int xiabiao =1;tap =false;for(int i =1;i<=n;i++) {nu[i]++;if(b[i]+k[i]*nu[i]<=0) {nu[i]--;//亏得钱continue;//这个项目不用再加入人了}else {flag1 = (b[i]+k[i]*nu[i]);//这个项目的门票flag = flag1*nu[i]-(flag1-k[i])*(nu[i]-1);if(max1<flag) {max1=flag;xiabiao=i;tap=true;}nu[i]--;}}if(tap) {nu[xiabiao]++;max = max+max1;}else break;}System.out.println(max);}}

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

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

相关文章

C# WPF编程-Application类(生命周期、程序集资源、本地化)

C# WPF编程-Application类 应用程序的生命周期创建Application对象应用程序的关闭方式应用程序事件 Application类的任务显示初始界面处理命令行参数访问当前Application对象在窗口之间进行交互 程序集资源添加资源检索资源pack URI内容文件 本地化构建能够本地化的用户界面 每…

注意力机制篇 | YOLOv8改进之添加DAT注意力机制

前言:Hello大家好,我是小哥谈。DAT(Vision Transformer with Deformable Attention)是一种引入了可变形注意力机制的视觉Transformer。在训练算法模型的时候,通过引入可变形注意力机制,改进了视觉Transformer的效率和性能,使其在处理复杂的视觉任务时更加高效和准确。�…

2024最新GPT4.0使用教程:GPTs,AI绘画,AI换脸,AI绘画,文档分析一站式解决

一、前言 ChatGPT3.5、GPT4.0、相信对大家应该不感到陌生吧&#xff1f;简单来说&#xff0c;GPT-4技术比之前的GPT-3.5相对来说更加智能&#xff0c;会根据用户的要求生成多种内容甚至也可以和用户进行创作交流。 然而&#xff0c;GPT-4对普通用户来说都是需要额外付费才可以…

前端订阅推送WebSocket定时任务

0.需求 后端定时向前端看板推送数据&#xff0c;每10秒或者30秒推送一次。 1.前言知识 HTTP协议是一个应用层协议&#xff0c;它的特点是无状态、无连接和单向的。在HTTP协议中&#xff0c;客户端发起请求&#xff0c;服务器则对请求进行响应。这种请求-响应的模式意味着服务器…

将 Three 带到 Vue 生态系统,TresJs 中文文档上线

将 Three 带到 Vue 生态系统&#xff0c;TresJs 中文文档上线 中文文档上线入门指南 ThreeJS 在创建 WebGL 3D 网站方面是一个奇妙的库&#xff0c;同时他也是一个保持不断更新的库&#xff0c;一些对其封装的维护者&#xff0c;如 TroisJS&#xff0c;往往很难跟上其所有的更…

Kubernetes kafka系列 | Strimzi 部署kafka-bridge

Strimzi kafka集群部署直通车 一、kafka bridge 介绍 Kafka Bridge 是 Apache Kafka 生态系统中的一个工具或组件&#xff0c;用于实现 Kafka 与其他系统或协议之间的通信或集成。Kafka 本身是一个分布式事件流平台&#xff0c;广泛用于构建实时数据流水线和流式应用程序。然而…

物联网实战--入门篇之(八)嵌入式-空气净化器

目录 一、风扇调速 二、通讯协议 三、净化器运行逻辑 一、风扇调速 单片机是不能直接驱动电机的&#xff0c;因为主芯片的驱动电流比较小(50mA左右)&#xff0c;他们之间正常还要有个电机驱动器&#xff0c;常用的有TB6612、L298和L9110等&#xff0c;目前项目用的这个电机它…

redis基础数据结构

文章目录 前言字符串常见命令内部编码使用场景1、缓存&#xff08;Cache&#xff09;功能2、计数3、共享Session4、限速 哈希命令内部编码使用场景存储结构化数据 列表命令内部编码使用场景1.阻塞消息队列模型2.文章列表3.微博 Timeline 集合命令内部编码使用场景1.给用户增加标…

Pytorch数据结构:Tensor

文章目录 Tensor基础1.1、Tensor的维度&#xff08;Dimensions&#xff09;1.1.1、举例说明1.1.2、高维Tensor 1.2、.dim()和.size()方法1.2.1、.dim()方法1.2.2、.size()方法1.2.3、.shape属性1.2.3、示例代码1.2.3.1、一维Tensor1.2.3.2、二维Tensor1.2.3.3、三维Tensor 1.3、…

PTA_语法入门赛

文章目录 7-1 格式化数字的显示-简单版7-2 三角形判定7-3 表面积和体积7-4 特殊数列求和7-5 矩阵中的鞍点7-6 反素数7-7 ISBN转换 题源&#xff1a;https://pintia.cn/problem-sets/1768428576024760320/overview 7-1 格式化数字的显示-简单版 在金融领域对金额之类的数字&am…

主流公链 - Fantom

Fantom&#xff1a;高性能的区块链协议 Fantom是一种开创性的区块链协议&#xff0c;旨在革新去中心化应用和数字金融领域 技术特点 共识机制 Lachesis协议&#xff1a;Fantom使用了Lachesis协议作为其共识算法。Lachesis是一种 异步拜占庭容错&#xff08;ABFT&#xff09;共…

java数据结构与算法刷题-----LeetCode200. 岛屿数量

java数据结构与算法刷题目录&#xff08;剑指Offer、LeetCode、ACM&#xff09;-----主目录-----持续更新(进不去说明我没写完)&#xff1a;https://blog.csdn.net/grd_java/article/details/123063846 文章目录 深度优先遍历 深度优先遍历 解题思路&#xff1a;时间复杂度O( …