第十五届蓝桥杯JavaB组省赛题解

第十五届蓝桥杯JavaB组省赛题解

蓝桥杯2024年第十五届省赛真题-分布式队列 - C语言网 (dotcpp.com)

阅读理解+模拟

#include <iostream>
#include <vector>
using namespace std;int main() {
int n;
cin >> n;
vector<int> list[n];
string cz;
int element, follower_id;
while (cin >> cz) {if (cz == "add") {cin >> element;list[0].push_back(element);} else if (cz == "sync") {cin >> follower_id;if (list[0].size() != list[follower_id].size()) {list[follower_id].push_back(list[0][list[follower_id].size()]);}} else if (cz == "query") {int min_size = list[0].size();for (int i = 1; i < n; i++) {min_size = min(min_size, (int)list[i].size());}cout << min_size << endl;}
}return 0;
}

蓝桥杯2024年第十五届省赛真题-食堂 - C语言网 (dotcpp.com)

分类讨论+贪心

因为有3人寝室,而桌子有4和6人桌,如果让3人寝室上4人桌的话这样就会空出一个位置,而其他4人2人寝室都可以凑满。

所以我们这只要讨论3人寝室,能先放6人桌就先放6人桌。剩下的2人寝和4人寝室,先放满6人桌,再放4人桌。(不过这个分类讨论情况真的太多了,写了2小时都没写出来脑子晕了就不贴代码了)

蓝桥杯2024年第十五届省赛真题-最优分组 - C语言网 (dotcpp.com)

思路很简单,我们只要枚举每个组有多少宠物就行了。

假设每个组有 x x x个宠物。一开始让一个组内所有宠物共同使用一个试剂,也就是需要 n / x n/x n/x个试剂

再假设每个组里患病的宠物是 x ∗ p x*p xp,而总的患病数量是 n ∗ x ∗ p n*x*p nxp,检测这些患病的宠物也需要 n ∗ x ∗ p n*x*p nxp个试剂

再加起来就是按照 x x x分组所需要的试剂,答案只用取个 m i n min min即可

#include<bits/stdc++.h>
#define int long long
#pragma GCC optimize(2)
#define endl '\n'
#define x first
#define y second
using namespace std;
const int N=210000,INF=0x3f3f3f3f;
typedef pair<int,int>pii;
int a[100];void solve()
{int n;double p;cin>>n>>p;double res=0x3f3f3f3f;int ans=0;for(int i=1;i<=n;i++){if(n%i==0){double t=n*p*i+n/i;if(res>=t){ans=i;res=t;}}}cout<<ans<<endl;
}signed main()
{ios::sync_with_stdio(false);int t=1;//cin>>t;while(t--)solve();return 0;
}

蓝桥杯2024年第十五届省赛真题-星际旅行 - C语言网 (dotcpp.com)

这题需要先分析看到边和点很小,询问很大,第一反应是需要预处理。答案是要求 x x x y y y步最多能走几个星球,所以我们可以贪心的想,我们对每个点都走最短路,那么走的星球数量肯定是最多的,所以这时候我们可以把 d i s t i , j dist_{i,j} disti,j定义为从 i i i开始走到 j j j的最短距离,类似于多源汇最短路,第一时间想到的是 F l o y d Floyd Floyd不过时间复杂度是 O ( n 3 ) O(n^3) O(n3)会tle,这时候我们就需要用 d i j k s t r a dijkstra dijkstra跑完任意点时间复杂度是 O ( n 2 l o g ( m ) + q n ) O(n^2log(m)+qn) O(n2log(m)+qn)

这里的 n n n很小所以能过。我们预处理完 d i s t dist dist数组我们遍历所有以 x x x为起点权值小于等于 y y y的有几个累加起来就是答案

int m,n,q;
vector<int>e[N];
vector<int>d[N];
bool st[N];vector<int> dij(int u)
{memset(st,0,sizeof st);vector<int>dist(n+10,0x3f3f3f3f);priority_queue<pii,vector<pii>,greater<pii>>q;q.push({0,u});dist[u]=0;while(q.size()){auto t=q.top();q.pop();if(st[t.y])continue;st[t.y]=1;for(auto v:e[t.y]){if(dist[v]>t.x+1){dist[v]=t.x+1;q.push({dist[v],v});}}}return dist;
}void solve()
{memset(st,0,sizeof st);cin>>n>>m>>q;for(int i=1;i<=m;i++){int x,y;cin>>x>>y;e[x].push_back(y);e[y].push_back(x);}for(int i=1;i<=n;i++){d[i]=dij(i);}int res=0;for(int i=1;i<=q;i++){int x,y;cin>>x>>y;for(int j=1;j<=n;j++)if(d[x][j]<=y){res++;}// cout<<res<<endl;}double ans=(res*1.0)/q;printf("%.2lf\n",ans);
}

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

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

相关文章

实例080 进度条百分比显示

本文仅供学习交流&#xff0c;严禁用于商业用途&#xff0c;如本文涉及侵权请及时联系本人将于及时删除 目录 1.实例说明 2.技术要点 3.实现过程 4.实例结果 5.示例拓展 2.10 进度条控件典型实例进度条控件&#xff08;Progress&#xff09;用于显示程序的进度&#xff0c…

NetSuite 文件夹 Group Restriction的探究

同一个角色&#xff0c;为什么相同的文件&#xff0c;有的用户可以看&#xff0c;而有的用户不能看呢&#xff1f;这其中与一个隐藏功能相关&#xff0c;即文件夹的Restriction相关&#xff0c;其中一个非常典型的点是Group Restriction&#xff08;组限制&#xff09;&#xf…

【Makefile(一)】

一、概述 什么是makefile&#xff1f;或许很多Windows的程序员都不知道这个东西&#xff0c;因为那些Windows的集成开发环境&#xff08;integrated development environment&#xff0c;IDE&#xff09;都为你做了这个工作&#xff0c;但我觉得要作一个好的和专业的程序员&am…

点云处理中阶 Keypoint

目录 一、什么是关键点 1、2D领域 2、3D领域 1. 点特征 2. 局部描述子 3. 全局描述子 4. 特征检测 二、官方案例案例与资料 三、特征描述与提取模块说明 四、总结 一、什么是关键点 3D点云的特征提取是从三维点云数据中识别和提取描述几何和结构特性的过程。这些特征…

Web渗透:XXE-XML外部实体漏洞

XML External Entity (XXE) 漏洞是一种注入攻击&#xff0c;利用不安全的XML解析器来执行各种恶意操作&#xff0c;如读取本地文件、执行远程代码、发起拒绝服务攻击等&#xff1b;此漏洞的根本原因在于XML标准允许在文档中定义外部实体&#xff0c;并在解析时进行解析和替换。…

Navicat连接服务器MySQL

Navicat连接服务器MySQL 1. Navicat连接服务器MySQL2. 如何查看MySQL用户名和密码3. 修改MySQL登录密码4. 安装MySQL(Centos7)遇到错误和问题1. error 1045 (28000): access denied for user rootlocalhost (using password:yes) 1. Navicat连接服务器MySQL 选择数据库 直接使用…

jar包转exe封装软件并一键安装使用

目录 封装文档说明如有跨域问题在ems服务增加配置服务启动自动打开浏览器使用工具 Launch4j 把jar包打成exe执行文件现在还不能给用户用&#xff0c;因为缺少jre&#xff0c;后面整合资源会把jre一起打包使用inno setup合并资源&#xff0c;mysql之类的服务&#xff0c;最终打包…

数字化转型下的企业人力资源信息系统研究

随着数字化转型的加速&#xff0c;企业人力资源管理面临着全新的挑战和机遇。传统的人力资源信息系统&#xff08;HRIS&#xff09;在新时代的要求下必须进行深刻的革新和升级&#xff0c;以更好地支持企业的发展战略和员工的需求。 数据驱动的决策支持 在当今这个信息化迅猛发…

【系统架构设计师】四、嵌入式基础知识(软件|软件设计|硬件|式总线逻辑)

目录 一、嵌入式软件 1.1 嵌入式软件分类 1.2 板级支持包(BSP) 1.3 BootLoader 1.4 设备驱动程序 二、嵌入式软件设计 2.1 编码 2.2 交叉编译 2.3 交叉调试 三、嵌入式系统硬件的分类 3.1 根据用途分类 3.2 存储器分类 四、内&#xff08;外&#xff09;总线逻辑 …

uni-app系列:uni.navigateTo传值跳转

文章目录 1. 使用URL参数2. 使用页面栈注意事项&#xff1a;uni.navigateTo API 参数详细说明回调函数参数 在uni-app中&#xff0c;如果想要通过uni.navigateTo方法跳转到另一个页面并传递参数&#xff0c;可以使用页面路由的URL参数或者页面栈的方式来传递。但是&#xff0c;…

分享一个解决 EF 性能低的思路,通过 Python 访问心跳侦测 API 保持 EF 在线

前言 .NET FrameWork EF&#xff08;Entity Framework&#xff09;是一个很优秀的 ORM 框架&#xff0c;对于提高工作效率很有帮助&#xff0c;但由于底层原因&#xff0c;在程序启动时&#xff0c;EF 需要初始化和加载模型及其对应的数据库元数据等等&#xff0c;涉及到数据库…

20240507-招商证券 基于鳄鱼线的指数择时及轮动策略

动量震荡指标构造 动量震荡指标为交易者提供了获利的钥匙。动量震荡指标测算了5根价格柱相对于34根价格柱的动量变化。首先计算最近5根价格柱的最高价和最低价间的中点的简单移动平均值&#xff0c;即(最高价最低价)12的简单移动平均&#xff0c;将得出的值减去最近34根价格柱…

urfread学Linux|基本操作

切换界面 如何在VMware切换到命令行界面、切回图形化界面、释放鼠标和键盘 使用ctrlalt可以释放虚拟机对鼠标键盘的控制——就是你可以按这个键切出来到windows 使用ctrlaltF1可以切到图形化界面 使用ctrlaltF2可以切到命令行界面 文件夹相关操作 创建&#xff1a;mkdir文件…

Odoo OWL组件简介

Odoo OWL是Odoo框架中的一个前端开发工具&#xff0c;它被设计用来创建高效、可维护的用户界面组件。OWL利用现代JavaScript的特性&#xff0c;如组件、钩子&#xff08;Hooks&#xff09;和虚拟DOM&#xff0c;来提高开发效率和用户体验。OWL组件是构建Odoo前端的基础&#xf…

Cephalo:专门用于仿生设计的多模态视觉大型语言模型

实时了解业内动态&#xff0c;论文是最好的桥梁&#xff0c;专栏精选论文重点解读热点论文&#xff0c;围绕着行业实践和工程量产。若在某个环节出现卡点&#xff0c;可以回到大模型必备腔调或者LLM背后的基础模型重新阅读。而最新科技&#xff08;Mamba,xLSTM,KAN&#xff09;…

linux库函数 gettimeofday() localtime 使用demo

1. 基本说明 /* linux库函数 gettimeofday 1. 头文件#include <sys/time.h> 2. 函数形式int gettimeofday(struct timeval *tv, struct timezone *tz); 3. 返回值Returns 0 on success, or –1 on error 4. 参数tv&#xff1a;虽然tv_usec字段提供微秒级精度&#xff0…

代码随想录训练营第十七天 654最大二叉树 617合并二叉树 700二叉树搜索树的搜索

第一题&#xff1a; 原题链接&#xff1a;. - 力扣&#xff08;LeetCode&#xff09; 思路&#xff1a; 先找到这个数组中的最大值的下标。 然后将数组分为左右两个区间。 然后进行递归。 /*** Definition for a binary tree node.* struct TreeNode {* int val;* …

审美进阶:7个小程序模板,助你提高设计感!

小程序是一种无需下载和安装即可使用的应用程序。小程序实现了应用程序“触手可及”的梦想。用户可以通过扫描或搜索打开应用程序。对于开发者来说&#xff0c;小程序也大大降低了开发成本。因此&#xff0c;越来越多的品牌争相制作小程序应用程序。本文将为您带来优秀的微信小…

安卓开发,获取本机手机号

用免费云服务器&#xff0c;三丰云记录安卓开发过程 以下是使用 Android 开发获取本机手机号的示例代码&#xff08;需要相关权限&#xff09;&#xff1a; java 复制 import android.content.Context; import android.content.pm.PackageManager; import android.os.Build; i…

ubuntu安装qtcreator与环境配置

sudo apt-get update sudo apt-get install gcc g # 两个编译器 sudo apt-get install build-essential # 编译c/c所需要的软件包 sudo apt-get install libgl1-mesa-dev # 安装mesa&#xff0c;Mesa 实际上是一个库&#xff0c;它实现了多种图形 API 规范 sudo apt-get insta…