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

换域名影响网站不百度竞价推广方案范文

换域名影响网站不,百度竞价推广方案范文,网站违规词处罚做网站的,深圳人大代表联络站网站建设华为OD机试题库《C》限时优惠 9.9 华为OD机试题库《Python》限时优惠 9.9 华为OD机试题库《JavaScript》限时优惠 9.9 针对刷题难,效率慢,我们提供一对一算法辅导, 针对个人情况定制化的提高计划(全称1V1效率更高)。 看…

华为OD机试题库《C++》限时优惠 9.9

华为OD机试题库《Python》限时优惠 9.9

华为OD机试题库《JavaScript》限时优惠 9.9

针对刷题难,效率慢,我们提供一对一算法辅导, 针对个人情况定制化的提高计划(全称1V1效率更高)。

看不懂有疑问需要答疑辅导欢迎私VX: code5bug

华为OD机试真题

题目描述

有一个局部互联区域内的 n 台设备,每台设备都有一定数量的空闲资源,这些资源可以池化共享。用户会发起两种操作:

  1. 申请资源:输入 1 x,表示本次申请需要 x 个资源。系统要返回当前资源池中能满足此申请且剩余资源最少的设备 ID;如果有多台设备满足条件,返回设备 ID 最小的;如果没有任何设备能满足,返回 0 并不做任何分配。
  2. 释放资源:输入 2 y,表示将第 y 次申请(不一定是成功分配的那一次)释放回原设备。释放时,资源立即归还,且空闲资源自动连续,无需考虑空洞。

给定 n(1 ≤ n ≤ 1000)、操作次数 m(1 ≤ m ≤ 105),以及初始时每台设备的空闲资源数 d₁…dₙ(1 ≤ dᵢ ≤ 1000),以及接下来 m 行操作,输出每次 “申请” 操作的返回值。

输入描述

第一行,输入n和 m

第二行输入n台设备的初始空闲资源数

接下来m行,输出要执行的操作

输出描述

输出每次“申请”操作的返回值。

示例1

输入:

2 2
100 500
1 40
1 450

输出:

1 2

题解

这道题目属于 模拟题,主要考察对操作流程的模拟和数据结构的选择。需要处理两种操作:申请资源和释放资源,并根据特定规则返回结果。

解题思路

  1. 申请资源操作1 x):
    • 遍历所有设备,筛选出当前空闲资源大于 x 的设备。
    • 对这些设备按照剩余资源升序排序,如果剩余资源相同,则按照设备 ID 升序排序。
    • 如果找到满足条件的设备,选择剩余资源最少且 ID 最小的设备,分配资源,并记录分配历史。
    • 如果没有满足条件的设备,返回 0
  2. 释放资源操作2 y):
    • 根据历史记录找到第 y 次申请对应的设备和分配的资源量。
    • 将资源归还给原设备。

代码描述

  • 输入处理:读取设备数量 n 和操作次数 m,以及每台设备的初始空闲资源。
  • 操作处理
    • 对于申请操作,筛选并排序可用设备,分配资源并记录历史。
    • 对于释放操作,根据历史记录归还资源。
  • 输出结果:每次申请操作的返回值。

时间复杂度

  • 申请操作:每次申请需要遍历所有设备(O(n)),然后排序(O(n log n)),因此最坏情况下为 O(n log n)。
  • 释放操作:直接根据历史记录归还资源,O(1)。
  • 总时间复杂度:O(m * n log n),其中 m 是操作次数,n 是设备数量。

空间复杂度

  • 需要存储设备空闲资源数组(O(n))和历史记录(O(m))。
  • 总空间复杂度:O(n + m)。

JavaScript

const rl = require('readline').createInterface({input: process.stdin,output: process.stdout,
});var iter = rl[Symbol.asyncIterator]();const readline = async () => (await iter.next()).value;// Author: code5bug
(async () => {let [n, m] = (await readline()).split(' ').map(Number);let free = (await readline()).split(' ').map(Number);// 历史资源的申请情况let history = [];// 每次申请操作的返回值let result = [];for (let i = 0; i < m; i++) {let [type, v] = (await readline()).split(' ').map(Number);// 申请资源if (type === 1) {// 注意, 在 JavaScript 中,箭头函数 => 后面的 { 会被解析为代码块的开始,而不是对象字面量的开始。// 因此,如果你直接写 {value, index} 而没有外层的括号 (),JavaScript 会认为这是一个代码块,而不是返回的对象,从而导致语法错误。let tmp = free.map((value, index) => ({value, index})).filter((item) => item.value > v);// 根据剩余资源和设备ID升序排序tmp.sort((a, b) => a.value - b.value || a.index - b.index);if(tmp.length > 0){idx = tmp[0].index;free[idx] -= v;history.push([idx, v]);result.push(idx + 1);}else{// 没有任何设备能满足history.push([-1, 0]);result.push(0);}// 释放资源}else if(type === 2){let [idx, size] = history[v - 1];if(idx != -1){free[idx] += size;}}}console.log(result.join(' '));rl.close();
})();

希望这个专栏能让您熟练掌握算法, 🎁🎁🎁。

整理题解不易, 如果有帮助到您,请给点个赞 ‍❤️‍ 和收藏 ⭐,让更多的人看到。🙏🙏🙏

http://www.dtcms.com/wzjs/191063.html

相关文章:

  • 旅行社网站建设方案书处理事件seo软件
  • 网站下载速度慢google网页版登录入口
  • 数据型网站建设百度网盟推广
  • 烟台网站建设的方法有哪些seo外包服务项目
  • 妇科医院网站设计南宁一站网网络技术有限公司
  • discuz 修改网站标题百度代做seo排名
  • 网络管理系统逻辑上的四个组成怎么seo网站排名
  • 网站后台管理规定湖北搜索引擎优化
  • 电子商务系统建设网站策划书线上引流的八种推广方式
  • 无锡做网站设计微信营销怎么做
  • 信访举报 网站 建设 情况权重查询爱站网
  • 做网站需要有服务器站长工具seo综合查询源码
  • wordpress表单中文版佛山做优化的公司
  • 北京网站制作与建设公司最新疫情爆发
  • 宁波哪里做网站的cps推广平台
  • 泾县网站seo优化排名seo交流
  • 湘潭网站建设有名磐石网络志鸿优化设计答案
  • 卖游戏币网站制作企业网站seo优化公司
  • 云南省玉溪市建设局官方网站促销活动推广方法有哪些
  • 怎么给网站加图标seo平台是什么
  • 外贸网站如何做推广是什么意思网上教育培训机构
  • 全部网站西安网站制作工作室
  • 海口模板建站哪家好美国今天刚刚发生的新闻
  • 做国学类网站合法吗重庆seo技术
  • 南昌网站建设公司渠道搜狗引擎
  • 美国做调查的网站杭州关键词排名提升
  • 外贸用什么软件杭州百度优化
  • 网站建设 坚持实用原则百度提交入口网址
  • 电子商务网站建设训练总结小熊猫seo博客
  • 网站标题没有排名怎么在百度上投放广告