【华为校招真题】分配资源ID 100% C++
前言
如果您在准备华为的面试,期间有想了解的可以私信我,我会尽可能帮您解答,也可以给您一些建议!
本文解法非最优解(即非性能最优),不能保证通过率。
Tips1:机试为ACM 模式
你的代码需要处理输入输出,input/cin接收输入、print/cout 格式化输出
Tips2:机试按通过率算分
复杂题目可以考虑暴力破解,再逐步优化,不是运行超时就无法得分,比如一个分数为200的题目,当前通过率为50%,那么最终分数就是200*50%=100分
题目
题目描述
给定一个管理ID的资源池,可以从资源池中分配资源!D和释放资源ID,分配方式有动态分配和指定分配,动态分配是从资源池的开始分配—个资源ID,指定分配是指定一个资源ID进行分配,无论哪种分配方式释放资源ID时都需要放到资源池的尾部。执行一系列操作后,请问资源池的第—个空闲资源ID应该是多少?
注意:
资源池的初始顺序是从小到大。
资源池中空闲资源ID不足时,动态分配失败,对资源池不进行任何操作。
指定分配资源ID已经被占用或者不在资源池范国内时,对资源池不进行任何操作。
释放资源ID不在资源池范国内时或者己经是空闲资源ID时,对资源池不进行任何操作。
保证每个用例最后都有空闲资源ID。