公号:嵌入式未来  《嵌入式软件开发笔试与面试手册》:https://blog.nowcoder.net/zhuanlan/jvN8gj  《嵌入式软件笔试-2023年真题汇总》:https://blog.nowcoder.net/zhuanlan/0oDWVm  通过率:第一题95%,第二题92%,第三题18%(没有附上)  3、安装太阳能板利润最大化  某公司计划在A地区选择一片区域投资建设太阳能发电站。  由于太阳能发电与地形、光照等自然条件强相关,因此在建设前,需要先进行建站选址、确定安装大阳能板的数量,让发电利润最大。  发电站每年的利润可以用以下公式计算    其中:  Ki:表示第i个太阳能板的年发电收入。与太阳能板安装位置的自然条件 (光照等) 有关。  N: 表示太阳能板总数量  C: 表示平均每个太阳能板每年的支出费用(老化损耗、维修等) ,取固定值: 5。    整个A地区是一个矩形区域。  前期技术人员,按照一块太阳能板覆盖的面积,将A地区内部划分为 m*n 个地块。提前测并计算出每一个地块的年发电收入,使用 m*n 的发电收入矩阵表示。  为了减少管理成本,充分利用土地,必须选择一个 矩形区域 进行排列安装。  请实现功能,求出发电站应安装多少块太阳能板,年利润最大,最大为多少。    输入  第一行包含两个正整数: m、n,空格分隔。表示A地区分成的 m * n 个地块;0<m、n<1024。  后续 n行,每行 m 个正整数,空格分隔。表示每个小块区域的太阳能板年发电收入。0<= 收入<100.  输出  两个整数值,空格分隔。第一个值表示安装的太阳能板总量,第二个值表示最大利润。  注意:  1、如果存在最大利润相同的情况,则输出太阳能板总量较小的结果。  2、如果所有地块利润都是负数,则需选择损失最少的那个地块,安装一块太阳能板。    样例1  输入:  3 2  4 10 7  3 2 9  输出:  4 8  解释:  4 10 7  3 2 9  选择的是: 10、7、2、9 这一正方形区域的 4 个地块。利润是: (10 + 7 + 2 + 9)- (4 * 5) = 8。  样例2  输入:  2 2  1 2  3 4  输出:   1-1  解释:每个地块的利润都是负数,则选择损失最小的一块。    1、获取网络忙时数据  工程师小王想要从海量的网络数据中,筛选出忙时数据。由于是海量数据,小王没办法对海量数据进行排序,再取topN的忙时数据(将数据从大到小排序,取前N个)。聪明的小王想到了使用固定大小的优先级队列来进行数据筛选。为了场景简化,我们用正整数集来表示海量的网络数据,同时只取N个忙时数据,也即只取N个最大的正整数。针对每一批数据输入,单独输出一行结果,直接将N个正整数拼接完完整的一行字符串输出即可。    输入  第一行是正整数N和M,N为忙时个数,取值范围[1,24], M为输入的数据行数,范围[1,1000];  接下来M行,每行两个正整数A,B,以空格分隔,表示有A个重复的正整数B,A、B的取值范围[1,2147483647],如  3 5  1 5  6 3  2 2  5 4  1 6  输出  输出每增加一批数据对应的队列结果,直接将队列里的所有数据集从大到小拼接成字符串输出。  如上例输入的输出为:  第一次输入1个5,则队列输出为5  第二次输入6个3,则队列输出为533  第三次输入2个2,则队列输出为533  第四次输入5个4,则队列输出为544  第五次输入1个6,则队列输出为654  所以最终的输出结果为:  5  533  533  544  654    样例1  输入:  1 3  2 3  1 6  7 4  输出:  3  6  6  解释:  只保留一个忙时  第一次输入2个3,则队列输出为3  第二次输入1个6,则队列输出为6  第三次输入7个4,则队列输出为6  所以最终输出结果为  3  6  6  #include <iostream>#include <queue>#include <vector>using namespace 
点赞 6
评论 0
全部评论

相关推荐

牛客44320985...:你的当务之急是把这个糖的要死的沟槽ide主题改了
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务