首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
AI面试、笔试、校招、雇品
HR免费试用AI面试
最新面试提效必备
登录
/
注册
佛系的王者在春招
哈尔滨理工大学 客户端开发
发布于北京
关注
已关注
取消关注
求点赞 收藏 关注哈 更多算法题更新中
@佛系的王者在春招:
华为OD机试统一考试D卷 - 分配土地
题目描述从前有个村庄,村民们喜欢在各种田地上插上小旗子,旗子上标识了各种不同的数字。某天集体村民决定将覆盖相同数字的最小矩阵形的土地分配给村里做出巨大贡献的村民,请问此次分配土地,做出贡献的村民种最大会分配多大面积?输入描述第一行输入 m 和 n,m 代表村子的土地的长n 代表土地的宽第二行开始输入地图上的具体标识输出描述此次分配土地,做出贡献的村民种最大会分配多大面积备注旗子上的数字为1~500,土地边长不超过500未插旗子的土地用0标识用例1输入3 31 0 10 0 00 1 0输出9说明土地上的旗子为1,其坐标分别为(0,0),(2,1)以及(0,2),为了覆盖所有旗子,矩阵需要覆盖的横坐标为0和2,纵坐标为0和2,所以面积为9,即(2-0+1)*(2-0+1)= 9用例2输入3 31 0 20 0 00 3 4输出1说明由于不存在成对的小旗子,故而返回1,即一块土地的面积。Javaimport java.util.HashMap;import java.util.Map;import java.util.Scanner;public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); // 土地的长和宽 int m = scanner.nextInt(); int n = scanner.nextInt(); // 二维数组存储土地上的标识 int[][] land = new int[m][n]; for (int i = 0; i < m; i++) { for (int j = 0; j < n; j++) { land[i][j] = scanner.nextInt(); } } // 哈希表存储每个数字的最小和最大位置 Map<Integer, int[]> minPos = new HashMap<>(); Map<Integer, int[]> maxPos = new HashMap<>(); // 遍历每块土地,更新每个数字的最小和最大位置 for (int i = 0; i < m; i++) { for (int j = 0; j < n; j++) { int num = land[i][j]; if (num != 0) { if (!minPos.containsKey(num)) { minPos.put(num, new int[]{i, j}); maxPos.put(num, new int[]{i, j}); } else { minPos.get(num)[0] = Math.min(minPos.get(num)[0], i); minPos.get(num)[1] = Math.min(minPos.get(num)[1], j); maxPos.get(num)[0] = Math.max(maxPos.get(num)[0], i); maxPos.get(num)[1] = Math.max(maxPos.get(num)[1], j); } } } } // 初始化 int maxArea = 0; // 遍历每个数字,计算其对应的面积,并更新最大面积 for (Integer num : minPos.keySet()) { int[] min = minPos.get(num); int[] max = maxPos.get(num); int area = (max[0] - min[0] + 1) * (max[1] - min[1] + 1); maxArea = Math.max(maxArea, area); } // 打印最大面积 System.out.println(maxArea); scanner.close(); }}C++贪心#include<bits/stdc++.h>using namespace std;struct ST{ int x_l = -1; int x_r = 501; int y_h = 501; int y_l = -1; int cnt;};int main(){ int m,n; cin>>m>>n; vector<vector<int>> mp(m,vector<int>(n)); map<int,ST> dic; for(int i=0;i<m;i++){ for(int j=0;j<n;j++){ cin>>mp[i][j]; if(mp[i][j] == 0) continue; dic[mp[i][j]].cnt++; if(i>dic[mp[i][j]].x_r || dic[mp[i][j]].x_r == 501) dic[mp[i][j]].x_r = i; if(i<dic[mp[i][j]].x_l || dic[mp[i][j]].x_l == -1) dic[mp[i][j]].x_l = i; if(j>dic[mp[i][j]].y_h || dic[mp[i][j]].y_h == 501) dic[mp[i][j]].y_h = j; if(j<dic[mp[i][j]].y_l || dic[mp[i][j]].y_l == -1) dic[mp[i][j]].y_l = j; } } int res = 0; for(auto x:dic){ if(x.second.cnt == 1){ res = max(res,1); continue; } int chang = (x.second.x_r - x.second.x_l+1); int kuan = (x.second.y_h - x.second.y_l+1); res = max(res,chang*kuan); } cout<<res<<endl;}
点赞 3
评论 2
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
02-21 16:28
上海交通大学 算法工程师
HTTP 和 HTTPS 区别
面试题简述我们平时开发时经常看到 HTTP 和 HTTPS,那你能说说它们之间的区别吗?为什么我们要用 HTTPS?它到底比 HTTP 多了什么?面试官想听的1、HTTPS 如何在 HTTP 基础上增加安全保障2、是否理解加密、认证、完整性的区别;3、能否举例说明浏览器访问网站时两者的不同面试回答举例HTTP 和 HTTPS 本质上都是应用层协议,用于浏览器与服务器之间传输数据。两者的区别在于:HTTP 是明文传输,而 HTTPS 在传输层加入了 SSL/TLS 加密层,实现了数据的加密、身份认证和完整性校验。举个例子:当我们访问 http://example.com 时,所有请求与响应的数据...
技术必备题库
点赞
评论
收藏
分享
02-16 10:47
联想(北京)有限公司_后端开发部_JAVA开发工程师(准入职员工)
康冠科技内推,康冠科技内推码
康冠科技硬件工程师面经8.7 一面终面 只有一次面试决定是否通过1.为什么选择珠三角这个地方来工作(改开前列,经济发达地区有更多机会,也有更多的资源)2.珠三角和长三角在同等条件下,会选择哪个区域,为什么3.平时有什么兴趣爱好4.个人有什么缺点(决策不够决断,指定目标的时候有些太远,可实施性不高)5.从哪里了解到的康冠6.对STM32单片机了解的多吗,32的GPIO口在我们使用的时候,需要进行哪些初始化动作(引脚复用的上下拉电阻,代码也需要确定使用输入输出;单功能接口不需要设置)7.STM32单片机的输入输出IO口最高工作速度,大概是多少兆8.项目中使用的传感器与单片机是怎么通信的,用...
点赞
评论
收藏
分享
01-17 22:52
武汉工商学院 嵌入式工程师
哇现在还有找51的[震惊😨]
递归到脑子变傻:
杭州还有上位机用VB的,实在没绷住
点赞
评论
收藏
分享
02-20 11:14
门头沟学院 C++
虎牙C++ 一面
1、自我介绍介绍了一下我自己啥情况,之前在哪个公司实习过,主要参与 C++ 后端相关开发工作。 实习期间我做过消息处理/服务端模块开发,参与了功能迭代、问题排查和一部分性能优化工作。 技术栈方面,我主要掌握 C/C++,熟悉 STL、Linux 开发环境、网络编程(TCP/IP)、多线程与并发编程,了解常用的数据结构与算法,也用过 MySQL、Redis 这类常见组件。 整体上我偏工程实践,比较关注代码质量、稳定性和性能,想在 C++ 后端方向继续深入。2、单例模式和工厂模式的作用单例模式:保证一个类全局只有一个实例,适合日志、配置中心、线程池这种“全局只要一个”的对象。 工厂模式:把对象创建...
C++面试总结
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
实习租房焚决
1764
2
...
暑期实习来得及吗
691
3
...
嵌入式应届生春招怎么准备——从零到拿 Offer 的系统攻略
647
4
...
HTTP 和 HTTPS 区别
524
5
...
27届实习近一年的年度经历和总结
436
6
...
04男大去相亲了
372
7
...
关于租房
322
8
...
美团推荐算法一面
285
9
...
agent实习都干什么?prompt设计
281
10
...
这个简历可以去找暑期实习了吗
253
创作者周榜
更多
正在热议
更多
#
牛客新年AI问运
#
14520次浏览
168人参与
#
记录实习开销
#
182878次浏览
721人参与
#
牛客AI体验站
#
17954次浏览
305人参与
#
大家每天通勤多久?
#
81946次浏览
586人参与
#
正在实习的你,几点下班
#
295300次浏览
1960人参与
#
牛客租房专区
#
152227次浏览
1509人参与
#
你小时候最想从事什么职业
#
154063次浏览
2059人参与
#
有转正机会的小厂实习值得去吗?
#
939次浏览
21人参与
#
你觉得今年秋招难吗
#
1988272次浏览
18492人参与
#
你最讨厌面试被问什么
#
1652次浏览
27人参与
#
金融银行求职进展汇总
#
309494次浏览
1685人参与
#
不给转正的实习,你还去吗
#
2624225次浏览
22797人参与
#
国庆放假,你还会投简历吗?
#
47850次浏览
214人参与
#
秋招的破防瞬间
#
509190次浏览
2606人参与
#
毕业论文进行时
#
29061次浏览
156人参与
#
如何缓解入职前的焦虑
#
259155次浏览
1454人参与
#
这份实习,有没有动摇过你的职业方向?
#
2448次浏览
40人参与
#
春节回家,你最想让 AI 帮你解决哪件事?
#
908次浏览
19人参与
#
毕业后不工作的日子里我在做什么
#
239320次浏览
1697人参与
#
2022届毕业生现状
#
1041482次浏览
7663人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务