当前位置: 首页 > news >正文

2025华为软件精英挑战赛2600w思路分享

这里写自定义目录标题

  • 得分展示
  • 对象定义
  • 请求价值计算
  • 时间同步
  • 删除操作
  • 完整思路

得分展示

在这里插入图片描述
请添加图片描述

对象定义

// 将一个磁盘划分为多个基于标签聚合的区块
class Block{
public:int tag = 0;   // 区块标签int start_pos;int end_pos;int id;int use_size = 0;int v;// 为区块确定范围Block(int id, int v) : id(id), v(v){start_pos = (id - 1) * BLOCK_SIZE + 1;end_pos = min(id * BLOCK_SIZE, v);}
};class Object{
public:int disk[REP_NUM + 1];    // 对象的三个副本磁盘 idint *unit[REP_NUM + 1];   // 每个副本中对象块的存储单元索引int obj_id = 0;int obj_size = 0;int obj_tag = 0;int last_request_point = 0; // 挂接未完成请求链头bool is_del = false;bool *block_read_status = nullptr;Object() {for (int i = 1; i <= REP_NUM; i++){unit[i] = new int[MAX_DISK_SIZE];}}
};class Disk{
public:int id = 0;pair<int, int> item[MAX_DISK_SIZE];int p = 1;                        // 磁头的位置char last_action = '$';int last_token_cost = 0;int used_tokens = 0;int disk_size = 0;vector<pair<int, int>> done_request;vector<int> request;       // 这个磁盘中的请求vector<Block> disk_blocks;int block_group_num;void initBlock(int num, int v){block_group_num = num;disk_blocks.push_back(Block(0, 0));for (int i = 1; i <= block_group_num; i++){disk_blocks.push_back(Block(i, v));}}Disk(){memset(item, 0, sizeof(item));}int calculateReadToken(Disk &disk){if (disk.last_action != 'r'){return 64;}else{float token = disk.last_token_cost * 0.8f;token = ceil(token);return max(16, int(token));}}
};class Request{
public:int req_id = 0;int obj_id = 0;int prev_id = 0;int arri_time = 0;bool is_done = false;float score = 0.0f;bool *block_read_status = nullptr;
};

请求价值计算

float get_score(int x){if (x <= 10){return -0.005 * x + 1.0;}else if(x <= 105){return -0.01 * x + 1.05;}else{return -1.0;}
}

时间同步

void handle_timestamp(){string t;cin >> t >> current_time;cout << "TIMESTAMP " << current_time << endl;fflush(stdout);
}

删除操作

void delete_action(){// 1 读取删除的个数int n_delete;cin >> n_delete;// 2 读取并记录所有删除的 对象idvector<int> deletes(n_delete);for (int i = 0; i < n_delete; i++)cin >> deletes[i];// 3 计算所有的终止 读请求 idvector<int> abort_reqs;for (int id : deletes){int curr_id = objects[id].last_request_point;while (curr_id != 0){if (!requests[curr_id].is_done){abort_reqs.push_back(curr_id);requests[curr_id].is_done = true;}curr_id = requests[curr_id].prev_id;}}// 4 输出终止的请求个数cout << int(abort_reqs.size()) << endl;// 5 输出所有的终止请求 idfor (int req_id : abort_reqs){cout << req_id << endl;}// 6 执行删除操作for (int id : deletes){int curr_id = objects[id].last_request_point;while (curr_id != 0){if (!requests[curr_id].is_done){cout << curr_id << endl;}curr_id = requests[curr_id].prev_id;}for (int rep = 1; rep <= REP_NUM; rep++){int disk_id = objects[id].disk[rep];if (disk_id < 1 || disk_id > N)continue;do_object_delete(objects[id].unit[rep], disks[disk_id], objects[id].obj_size);}objects[id].is_del = true;}fflush(stdout);
}

完整思路

查看

相关文章:

2025华为软件精英挑战赛2600w思路分享

这里写自定义目录标题 得分展示对象定义请求价值计算时间同步删除操作完整思路 得分展示 对象定义 // 将一个磁盘划分为多个基于标签聚合的区块 class Block{ public:int tag 0; // 区块标签int start_pos;int end_pos;int id;int use_size 0;int v;// 为区块确定范围Bloc…...

LSTM网络是什么?

环境&#xff1a; LSTM网络 问题描述&#xff1a; LSTM网络是什么&#xff1f; 解决方案&#xff1a; LSTM 网络解释 LSTM&#xff08;Long Short-Term Memory&#xff09;网络 是一种特殊的递归神经网络&#xff08;RNN&#xff09;&#xff0c;能够学习长期依赖关系。L…...

bert自然语言处理框架

自然语言处理框架 目录 自然语言处理框架bert自然语言处理框架概念核心特点应用场景 框架和数据集结构编码-解码框架Self-Attention 机制multi-headed机制位置编码Add与Normalize整体框架outputs训练数据集 bert自然语言处理框架 概念 BERT&#xff08;Bidirectional Encoder …...

UE5学习笔记 FPS游戏制作33 游戏保存

文章目录 核心思想创建数据对象创建UIUI参数和方法打开UI存档文件的位置可以保存的数据类型 核心思想 UE自己有保存游戏的功能&#xff0c;核心节点&#xff0c;类似于json操作&#xff0c;需要一个数据类的对象来进行保存和读取 创建存档 加载存档 保存存档 创建数据对象…...

【超详细】一文解决更新小米澎湃2.0后LSPose失效问题

【超详细】一文解决更新澎湃2.0后LSPose失效问题 问题分析&#xff1a; 出现这个问题大多是因为本次为大版本更新A14->A15,因此原来的LSPose无法支持新系统特性导致的&#xff0c;因此我们从此出发解决这个问题。 方案一&#xff08;magisk&#xff09;&#xff1a; 直接…...

Python爬虫教程007:scrapy结合实际案例的简单使用

文章目录 3.1 scrapy安装3.2 scrapy的基本使用3.2.1 scrapy项目的创建和运行3.3 58同城案例3.3.1 创建案例3.3.2 项目结构说明3.4 汽车之家案例3.1 scrapy安装 什么是scrapy: Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架。可以应用在包括数据挖掘、信息处…...

【可能性:如何从已有条件中分析一件事情是否会发生? 关键字摘抄】

是否可以直接从前提条件给出的信息中&#xff0c;推理出一件事情是否会发生呢&#xff1f;还真的可以&#xff0c;这一讲&#xff0c;我们就来说说&#xff0c;什么是逻辑上的必然性&#xff0c;可能性和排他性。 白马非马&#xff1f; 春秋战国百家争鸣时期&#xff0c;名家…...

WPS JS宏编程教程(从基础到进阶)-- 第四部分:函数与自定义功能开发

第四部分:函数与自定义功能开发 1. 函数的创建与调用**基础概念****1.1 命名函数与匿名函数****命名函数示例:计算矩形面积****匿名函数示例:动态赋值****1.2 箭头函数****特点**:简化语法,自动继承外层 `this`。2. 自定义函数实战**2.1 身份证信息提取函数****功能**:从…...

Pytorch 张量操作

在深度学习中&#xff0c;数据的表示和处理是至关重要的。PyTorch 作为一个强大的深度学习框架&#xff0c;其核心数据结构是张量&#xff08;Tensor&#xff09;。张量是一个多维数组&#xff0c;类似于 NumPy 的数组&#xff0c;但具有更强大的功能&#xff0c;尤其是在 GPU …...

constant(safe-area-inset-bottom)和env(safe-area-inset-bottom)在uniapp中的使用方法解析

在微信小程序中&#xff0c;padding-bottom: constant(safe-area-inset-bottom); 和 padding-bottom: env(safe-area-inset-bottom); 这两个 CSS 属性用于处理 iPhone X 及更高版本设备的安全区域&#xff08;safe area&#xff09;。这些设备的底部有一个“Home Indicator”&a…...

ROS相关学习笔记

以下是创建并初始化一个新的 catkin 工作空间的具体步骤 mkdir -p ~/catkin_ws/src cd ~/catkin_ws/src catkin_init_workspace #这会在 src 目录下创建一个 CMakeLists.txt 文件 构建工作空间 进入工作空间根目录并构建 cd ~/catkin_ws catkin_make 或者&#xff0c;…...

大模型专题10 —LangGraph高级教程:构建支持网页搜索+人工干预的可追溯对话系统

在本教程中,我们将使用 LangGraph 构建一个支持聊天机器人,该机器人能够: ✅ 通过搜索网络回答常见问题 ✅ 在多次调用之间保持对话状态 ✅ 将复杂查询路由给人工进行审核 ✅ 使用自定义状态来控制其行为 ✅ 进行回溯并探索替代的对话路径 我们将从一个基础的聊天机器人开…...

rbpf虚拟机-汇编和反汇编器

文章目录 一、概述二、主要功能三、关键函数解析3.1 汇编器3.1.1 parse -转换为Instruction列表3.1.2 assemble_internal-转换为Insn 3.2 反汇编器3.2.1 to_insn_vec-转换为机器指令 四、总结 Welcome to Code Blocks blog 本篇文章主要介绍了 [rbpf虚拟机-汇编和反汇编器] ❤…...

压测数据说话:如何用科学方法选择最优高防套餐?

一、压测数据到高防参数的映射规则 1. 带宽需求计算 所需防护带宽 压测崩溃带宽 安全系数&#xff08;建议1.5倍&#xff09; 示例&#xff1a;测试崩溃值50Gbps → 选择75G套餐&#xff08;群联资费表“100G套餐&#xffe5;8,500/月”&#xff09; 2. 连接数容量评估 …...

【初阶数据结构】队列

文章目录 目录 一、概念与结构 二、队列的实现 队列的定义 1.初始化 2.入队列 3.判断队列是否为空 4.出队列 5.取队头数据 6.取队尾数据 7.队列有效个数 8.销毁队列 三.完整源码 总结 一、概念与结构 概念&#xff1a;只允许在一端进行插入数据操作&#xff0c;在另一端进行删除…...

ai说js的instanceof是什么怎么用

instanceof 是一个用于检测对象是否是某个构造函数的实例的操作符 &#xff08;1&#xff09;检测内置类型 对于 JavaScript 的内置类型&#xff0c;instanceof 可以用来检测对象是否是某种内置类型的实例。 let arr [1, 2, 3]; console.log(arr instanceof Array); // tru…...

PyTorch中知识蒸馏浅讲

知识蒸馏 在 PyTorch 中,使用 teacher_model.eval() 和冻结教师模型参数是知识蒸馏(Knowledge Distillation)中的关键步骤。 ​1. teacher_model.eval() 的作用 目的: 将教师模型切换到评估模式,影响某些特定层(如 Dropout、BatchNorm)的行为。 ​具体影响: ​Dropo…...

服务器自动备份到本地,服务器自动备份到本地的方法有哪些?

服务器自动备份到本地是确保数据安全和系统恢复能力的关键步骤。以下是几种常见的服务器自动备份到本地的方法&#xff1a; 一、使用系统自带的备份工具 Windows Server Windows Server Backup 简介&#xff1a;Windows Server Backup是Windows Server操作系统内置的备份和…...

Vue+Elementui首页看板

源码 <template><!-- 查询条件--><div class="optimize-norm" v-loading="selectDataLoading"><el-form :model="queryParams" ref="queryRef" style="padding-bottom:8px" :inline="true"…...

力扣HOT100之链表:141. 环形链表

这道题都已经刷烂了&#xff0c;没啥好说的&#xff0c;就是定义快慢指针&#xff0c;慢指针每次移动一步&#xff0c;快指针每次移动两步&#xff0c;如果链表中有环&#xff0c;那么快指针一定会追上慢指针&#xff0c;追上时直接返回true&#xff0c;否则快指针会直接到达链…...

vue实现俄罗斯方块

说明&#xff1a; vue实现俄罗斯方块 效果图&#xff1a; step1:C:\Users\wangrusheng\PycharmProjects\untitled3\src\views\Game.vue <script setup> import { ref, reactive, computed, onMounted, onUnmounted } from vueconst SHAPES [[[1, 1, 1, 1]], // I[[1, …...

Web3.0隐私计算与云手机的结合

Web3.0隐私计算与云手机的结合 Web3.0隐私计算与云手机的结合&#xff0c;标志着从“数据垄断”向“数据自主”的范式转变。通过技术互补&#xff0c;两者能够构建更安全、高效且用户主导的数字生态。尽管面临技术整合和成本挑战&#xff0c;但随着区块链、AI和分布式存储的成…...

git | 版本切换的相关指令

常见指令 git log --oneline #查看历史提交 git tag latest-backup # 对当前的提交进行标记&#xff0c;标记名为latest-backup git checkout -b old-version 55b16aa # 切换到[55b16aa]的提交中&#xff0c;并标记为[old-version]的分支 git checkout master …...

基于 Fluent-Bit 和 Fluentd 的分布式日志采集与处理方案

#作者&#xff1a;任少近 文章目录 需求描述系统目标系统组件Fluent BitFluentdKafka 数据流与处理流程日志采集日志转发到 Fluentd日志处理与转发到 KafkaKafka 作为消息队列 具体配置Fluent-Bit的CM配置Fluent-Bit的DS配置Fluentd的CM配置Fluentd的DS配置Kafka查询结果 需求…...

【渗透测试】Vulnhub靶机-FSoft Challenges VM: 1-详细通关教程

下载地址&#xff1a;https://www.vulnhub.com/entry/fsoft-challenges-vm-1,402/ 目录 前言 信息收集 目录扫描 wpscan扫描 修改密码 反弹shell 提权 思路总结 前言 开始前注意靶机简介&#xff0c;当第一次开机时会报apache错误&#xff0c;所以要等一分钟后重启才…...

c语言strcat和strlen的注意事项

1 .strlen C库函数size_t strlen(const char* str)计算字符串str的长度&#xff0c;直到空字符&#xff0c;不包括空字符。在C语言中&#xff0c;字符串实际上是使用空字符\0结尾的一维字符数组。空字符&#xff08;Null character&#xff09;又称结束符&#xff0c;缩写NUL&…...

本地RAG知识库,如何进行数据结构化和清洗?

环境&#xff1a; 数据结构化和清洗 问题描述&#xff1a; 本地RAG知识库&#xff0c;如何进行数据结构化和清洗&#xff1f; 解决方案&#xff1a; 1. 数据结构化的重要性 RAG技术需求&#xff1a;在检索增强生成&#xff08;Retrieval-Augmented Generation, RAG&#xf…...

开源测试用例管理平台

不可错过的10个开源测试用例管理平台&#xff1a; PingCode、TestLink、Kiwi TCMS、Squash TM、FitNesse、Tuleap、Robot Framework、SpecFlow、TestMaster、Nitrate。 开源测试用例管理工具提供了一种透明、灵活的解决方案&#xff0c;使团队能够在不受限的情况下适应具体的测…...

OpenAI最近放出大新闻,准备在接下来的几个月内推出一款“开放”的语言模型

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…...

锁策略--

文章目录 乐观锁和悲观锁轻量锁和重量锁自旋锁和挂起等待锁读写锁和互斥锁可重入锁和不可重入锁公平锁和非公平锁 乐观锁和悲观锁 乐观锁在执行任务前预期竞争不激烈&#xff0c;就先不添加锁等到了发生了真实的锁竞争再进行锁竞争 乐观锁适用于锁竞争不激烈的情况下 悲观锁在…...

IO多路复用

BIO&#xff08;同步阻塞&#xff09; 当客户端请求连接到服务端请求过程中其实是通过socket连接&#xff0c;socket的意思其实就是插座&#xff0c;可以理解成手机需要充电&#xff0c;这里的电要从服务端获取&#xff0c;手机的充电口和服务端的插座都是socket&#xff0c;假…...

AF3 OpenFoldSingleDataset类解读

AlphaFold3 data_modules 模块的 OpenFoldSingleDataset类 是 OpenFold 中的一个数据集类,继承自 torch.utils.data.Dataset,用于加载和处理蛋白质结构数据,以支持 AlphaFold3 相关的深度学习任务。OpenFoldSingleDataset 读取的多序列比对(MSA)数据、模板(template)特征…...

高级java每日一道面试题-2025年3月21日-微服务篇[Nacos篇]-什么是Nacos?

如果有遗漏,评论区告诉我进行补充 面试官: 什么是Nacos&#xff1f; 我回答: Nacos综合解析 一、Nacos的定义与功能 Nacos是阿里巴巴开源的一个专注于动态服务发现、配置管理和服务管理平台&#xff0c;其名称来源于Dynamic Naming and Configuration Service&#xff08;…...

C++练习3

练习 终端上输出 3.14 要求实现 myDouble的 operator operator- operator* &#xff08;不考虑进位&#xff09; class myOut { 没有私有成员 只有公开函数 } myOut out; out << 1 终端输出1 out << 3.14 终端输出3.14 out << "hello" 终…...

Deepseek API+Python 测试用例一键生成与导出 V1.0.6(加入分块策略,返回更完整可靠)

随着Deepseek APIPython 测试用例一键生成与导出 V1.0.5的试用不断深入&#xff0c;在处理需求文档内容时&#xff0c;会出现由于文档内容过长导致大模型返回的用例远达不到我们的期望数量&#xff1b;另一方面&#xff0c;是接口文档的读取&#xff0c;如果接口数量过多&#…...

JDK 17 + Spring Boot 3 全栈升级实战指南--从语法革新到云原生,解锁企业级开发新范式

&#x1f680; 技术升级背景 随着 JDK 17&#xff08;LTS&#xff09; 与 Spring Boot 3 的发布&#xff0c;Java 生态迎来性能与开发效率的双重飞跃。相较于 JDK 8&#xff0c;JDK 17 在语法、API、GC 等方面均有显著优化&#xff0c;而 Spring Boot 3 则全面拥抱 Jakarta EE…...

phpStorm2021.3.3在windows系统上配置Xdebug调试

开始 首先根据PHP的版本下载并安装对应的Xdebug扩展在phpStorm工具中找到设置添加服务添加php web page配置完信息后 首先根据PHP的版本下载并安装对应的Xdebug扩展 我使用的是phpStudy工具&#xff0c;直接在php对应的版本中开启xdebug扩展&#xff0c; 并在php.ini中添加如下…...

DFS/BFS简介以及剪枝技巧

DFS简介 DFS含义 ⭐ DFS&#xff0c;即Depth-first-search&#xff0c;是深度优先搜索的简称。 它的主要思路是一直沿当前分支搜索&#xff0c;当搜索到尽头之后返回&#xff0c;再逐步向其他地方扩散。 我们可以通过一个树形结构说明DFS的遍历顺序 A/ | \B C D/ \ |E…...

LeetCode[15]三数之和

思路&#xff1a; 一开始我想的用哈希表来做&#xff0c;但是怎么想怎么麻烦&#xff0c;最后看解析&#xff0c;发现人家用的双指针&#xff0c;那我来讲一下我这道题理解的双指针。 这道题使用双指针之前一定要给数组进行排序&#xff0c;ok为什么排序&#xff1f;因为我需要…...

高性能计算面经

高性能计算面经 C八股文真景一面凉经自我介绍&#xff0c;介绍一下你做过的加速的模块(叠噪&#xff0c;噪声跟原图有什么关系&#xff1f;)OpenGL和OpenCL有什么区别&#xff1f;**1. 核心用途****2. 编程模型****3. 硬件抽象****4. API设计****5. 典型应用场景****6. 互操作性…...

HTML 标签类型全面介绍

HTML 标签类型全面介绍 HTML&#xff08;HyperText Markup Language&#xff09;是构建 Web 页面结构的基础语言。HTML 由不同类型的标签组成&#xff0c;每种标签都有特定的用途。本文将全面介绍 HTML 标签的分类及其用法。 1. HTML 标签概述 HTML 标签通常成对出现&#xf…...

【漫话机器学习系列】168.最大最小值缩放(Min-Max Scaling)

在机器学习和数据预处理中&#xff0c;特征缩放&#xff08;Feature Scaling&#xff09; 是一个至关重要的步骤&#xff0c;它可以使模型更稳定&#xff0c;提高训练速度&#xff0c;并优化收敛效果。最大最小值缩放&#xff08;Min-Max Scaling&#xff09; 是其中最常见的方…...

Spring Boot中对同一接口定义多个切面的示例,分别通过接口方式和注解方式实现切面排序,并对比差异

以下是Spring Boot中对同一接口定义多个切面的示例&#xff0c;分别通过接口方式和注解方式实现切面排序&#xff0c;并对比差异&#xff1a; 一、接口方式实现切面排序 1. 定义接口 // 服务接口 public interface MyService {void methodA();void methodB(); }// 接口实现类…...

基于SpringBoot的高校学术交流平台

作者&#xff1a;计算机学姐 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等&#xff0c;“文末源码”。 专栏推荐&#xff1a;前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏&#xff1a;…...

数据治理的专题库

数据治理专题库的全面解析 一、专题库的定义与定位 数据治理专题库是围绕特定业务领域或场景构建的专业化数据库&#xff0c;其核心在于业务导向性和自主性。与基础库&#xff08;如人口、法人、地理信息等跨部门核心实体数据&#xff09;和主题库&#xff08;如市场监管中的…...

【MathType】MathType安装和嵌入word

MathType 是一款功能强大的数学公式编辑器&#xff0c;广泛应用于学术论文、教材编写、科研报告等领域。它支持多种数学符号、公式排版&#xff0c;并且与 Microsoft Word、Google Docs、WPS 等办公软件兼容&#xff0c;极大地方便了数学公式的输入和编辑 记录一下安装的过程 …...

mediacodec服务启动时加载media_codecs.xml

media.codec服务启动时&#xff0c; 会创建 implementation::Omx 和 implementation::OmxStore&#xff0c; 构造 Omx时&#xff0c; 会解析codec相关的xml文件&#xff0c;一般从会如下目录中&#xff0c; // from getDefaultSearchDirs() { "/product/etc",&quo…...

Scala(三)

本节课学习了函数式编程&#xff0c;了解到它与Java、C函数式编程的区别&#xff1b;学习了函数的基础&#xff0c;了解到它的基本语法、函数和方法的定义、函数高级。。。学习到函数至简原则&#xff0c;高阶函数&#xff0c;匿名函数等。 函数的定义 函数基本语法 例子&…...

kafka 报错消息太大解决方案 Broker: Message size too large

kafka-configs.sh --bootstrap-server localhost:9092 \ --alter --entity-type topics \ --entity-name sim_result_zy \ --add-config max.message.bytes10485880 学习营课程...

APScheduler定时

异步IO 定时(协程&#xff09; import asyncio import logging from apscheduler.schedulers.asyncio import AsyncIOScheduler from apscheduler.triggers.cron import CronTriggerlogging.basicConfig(levellogging.INFO) logger logging.getLogger(__name__)class Schedul…...