蓝桥杯刷题第七天

       这道题一开始看真的有点简单,但一开始跟着案例先入为主了,误以为是只有两个项目想着穷举完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.mzph.cn/news/786527.shtml

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

相关文章

linux编辑器——vim使用方法

文章目录 linux编辑器——vim使用方法1. vim的基本概念2. vim的基本操作3. vim正常模式命令集4. vim末行模式命令集5. vim操作总结6.简单vim配置7.参考资料 linux编辑器——vim使用方法 vi/vim的区别简单点来说&#xff0c;它们都是多模式编辑器&#xff0c;不同的是vim是vi的…

泛域名站群,泛域名程序

泛域名站群是一种利用大量类似的泛域名来建立多个网站&#xff0c;并通过这些网站链接到主网站&#xff0c;以提升主网站的排名和流量的策略。泛域名站群通常包含大量的子域名&#xff0c;这些子域名指向不同的页面&#xff0c;但它们的内容大部分是重复或相似的&#xff0c;目…

【Frida】【Android】08_爬虫之网络通信库okhttp3

&#x1f6eb; 系列文章导航 【Frida】【Android】01_手把手教你环境搭建 https://blog.csdn.net/kinghzking/article/details/136986950【Frida】【Android】02_JAVA层HOOK https://blog.csdn.net/kinghzking/article/details/137008446【Frida】【Android】03_RPC https://bl…

练气第五天

在面试过程中&#xff0c;怎么区分中级&#xff0c;高级&#xff1f; 问:说一说handler机制&#xff1f; 答一: handler是Android系统中的消息机制&#xff0c;内部包括looper,messagequeue,message。 答二: 应用启动是从 ActivityThread 的 main 开始的&#xff0c;先是执行…

编译和链接(基础速通版)

翻译环境和运行环境 前提解释 电脑是不能直接执行C语言的程序代码的&#xff0c;所依赖的是翻译环境进行一个源代码运行的时候需要经过翻译环境和运行环境的处理&#xff0c;才能得到你需要的可运行程序。 这里是源文件&#xff0c;也就是 .c文件&#xff0c;通过翻译环境得…

算法——矩阵:对于边界元素的处理

. - 力扣&#xff08;LeetCode&#xff09; 题目简述&#xff1a;扫雷&#xff0c;点击一个格子&#xff0c;返回整个地图的下一个状态。 对于边界元素&#xff0c;可以设置两个数组&#xff0c;index_row&#xff0c;index_col&#xff0c;遍历到一个格子需要搜索其周围格子…

图解PyTorch中的torch.gather函数和 scatter 函数

前言 torch.gather在目前基于 transformer or query based 的目标检测中&#xff0c;在最后获取目标结果时&#xff0c;经常用到。 这里记录下用法&#xff0c;防止之后又忘了。 介绍 torch.gather 官方文档对torch.gather()的定义非常简洁 定义&#xff1a;从原tensor中获…

Ubuntu joystick 测试手柄 xbox

Ubuntu joystick 测试手柄 xbox 测试使用Ubuntu20.04 测试环境在工控机 安装测试 实际测试使用的手柄是北通阿修罗2pro 兼容xbox Ubuntu20.04主机 连接手柄或者无线接收器后查看是否已经检测到&#xff1a; ls /dev/input找到输入中的 js0 即为手柄输入 需要安装joysti…

什么函数不能声明为虚函数?

常见的不能声明为虚函数的有普通函数&#xff08;非成员函数&#xff09;、静态成员函数、内联成员函数、 构造函数和友元函数。以下将分别对这几种情况进行分析。 普通函数&#xff08;非成员函数&#xff09; 普通函数&#xff08;非成员函数&#xff09;只能overload &…

sql注入详解

ps:简单说下这里只写了我能理解的明白的&#xff0c;后面的二阶注入&#xff0c;堆叠注入没写 手工sql注入 1.存在sql注入本质上就是数据库过滤的不严格或者未进行过滤&#xff0c;1 and 11&#xff0c;返回正常&#xff0c;1 and 12 返回不正常&#xff0c;说明带到数据库里面…

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

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

C51-- 蓝牙,WIFI模块

HC-08蓝牙模块: 蓝牙 -- 最好用的 串口透传 模块 透传 -- 透明传送&#xff0c;指的是在数据传输的过程中&#xff0c;通过无线的方式这组数据不发生任何形式的改变&#xff0c; 仿佛传输过程是透明的&#xff0c;同时保证传输质量&#xff0c;最终原封不动的传送到接收者手…

css酷炫边框

边框一 .leftClass {background: #000;/* -webkit-animation: twinkling 1s infinite ease-in-out; 1秒钟的开始结束都慢的无限次动画 */ } .leftClass::before {content: "";width: 104%;height: 102%;border-radius: 8px;background-image: linear-gradient(var(…

正则表达式引擎库汇合

1.总览表格 一些正则表达式库的对比 index库名编程语言说明代码示例编译指令1Posix正则C语言是C标准库中用于编译POSIX风格的正则表达式库 posix-re.cgcc posix-re.c 2PCRE库C语言提供类似Perl语言的一个正则表达式引擎库。 一般系统上对应/usr/lib64/libpcre.so这个库文件&am…

柔性数组详细讲解

动态内存函数的使用和综合实践-malloc&#xff0c;free&#xff0c;realloc&#xff0c;calloc-CSDN博客https://blog.csdn.net/Jason_from_China/article/details/137075045 柔性数组存在的意义 柔性数组在编程语言中指的是可以动态调整大小的数组。相比固定大小的数组&#…

Redis中惰性策略的启发和流量包应用设计

引言 在技术领域&#xff0c;许多中间件之所以获得巨大成功&#xff0c;部分原因在于它们所采用的思想之先进。这些思想解决了一个个世纪难题&#xff0c;接下来我将讲述一个我学习到的思想&#xff0c;并将其应用至工作中的案例。 惰性策略在日常编码中随处可见&#xff0c;但…

STL容器的一些操作(常用的,不全)

目录 string 1.string的一些创建 2.string 的读入和输出&#xff1a; 3.string的一些操作 4.彻底清空string 容器的函数 vector 1.vector的一些创建&#xff1a; 2.vector的一些操作&#xff1a; 3.vector的彻底清空并释放内存&#xff1a; queue 循环队列&#xff1…

兑换码生成算法

兑换码生成算法 兑换码生成算法1.兑换码的需求2.算法分析2.重兑校验算法3.防刷校验算法 3.算法实现 兑换码生成算法 兑换码生成通常涉及在特定场景下为用户提供特定产品或服务的权益或礼品&#xff0c;典型的应用场景包括优惠券、礼品卡、会员权益等。 1.兑换码的需求 要求如…

【DevOps工具篇】安装 LDAP 管理 GUI PhpLdapAdmin

【DevOps工具篇】安装 LDAP 管理 GUI PhpLdapAdmin 目录 【DevOps工具篇】安装 LDAP 管理 GUI PhpLdapAdmin启用远程管理功能安装 phpLDAPadmin对 phpLDAPadmin 进行补丁Apache 的配置编辑配置文件推荐超级课程: Docker快速入门到精通Kubernetes入门到大师通关课AWS云服务快速…

Pointnet++分类和分割数据集准备和实验复现

5.分类数据集Modelnet40及可视化 Modelnet40分类数据集 原始的modelnet40是off文件&#xff0c;是cad模型 OFF文件是一种用于存储三维对象信息的文件格式&#xff0c;全称为"Object File Format"。它主要用于存储几何体的顶点、边和面信息&#xff0c;以及可能的颜…