首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
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
全部评论
推荐
最新
楼层
暂无评论,快来抢首评~
相关推荐
昨天 16:55
华南师范大学 算法工程师
27简历求锐评
牛爷爷们,求锐评,不玻璃心
点赞
评论
收藏
分享
05-26 09:27
北京邮电大学 嵌入式工程师
宇树机器人面经(嵌入式/机器人方向)
一面(基础技术面)自我介绍,然后开始问基础,偏嵌入式底层和RTOS:设计一个带看门狗(Watchdog)的嵌入式系统,描述故障恢复流程UART、SPI、I2C 协议的核心差异及典型应用场景推挽输出与开漏输出的区别?举例说明在 GPIO 控制中的应用如何通过 DMA 减少 CPU 在数据传输中的负载系统时钟配置对低功耗设计的意义是什么嵌入式操作系统(如 FreeRTOS)中任务的状态有哪些?状态切换条件实时操作系统(RTOS)的“硬实时”与“软实时”区别RTOS 的任务调度策略有哪些?如何保证实时性任务间通信方式(信号量、消息队列、管道)的适用场景及优缺点如何避免中断服务程序(ISR)中的竞争条...
点赞
评论
收藏
分享
04-26 11:38
南昌理工学院 前端工程师
开发学成这样还能找到工作吗?
再懒也要睡懒觉:
大学4年玩的挺爽的哈😅
点赞
评论
收藏
分享
05-30 18:22
门头沟学院 Java
28届java后端海投三天还是没有面,必须有agent项目吗[牛泪]
28届java后端海投三天还是没有面,必须有agent项目吗
点赞
评论
收藏
分享
评论
点赞成功,聊一聊 >
点赞
收藏
分享
评论
提到的真题
返回内容
全站热榜
更多
1
...
我有罪,我活该,大家骂我吧!
6769
2
...
pdd笔试有点难啊
3700
3
...
华为OD真是路边一条
3304
4
...
靠作弊进大厂
2434
5
...
客户端才是版本答案
2332
6
...
分享自己在做的multi-agent项目
1605
7
...
五月总结-会议室常客
1291
8
...
#拼多多集团-PDD笔试#本来就不会做,还一直报我离开页面,红温了
1206
9
...
说真的,校招第一份工作的钱,比你想的重要得多💰
1200
10
...
27届暑期实习 0 offer感想
1166
创作者周榜
更多
正在热议
更多
#
要毕业了,再不说就来不及了
#
26984次浏览
347人参与
#
我的租房踩坑经历
#
226587次浏览
1191人参与
#
第3届现代汽车Code Faster急速编程挑战赛
#
3403次浏览
190人参与
#
蔚来工作体验
#
35654次浏览
94人参与
#
你觉得什么岗位会被AI替代
#
67840次浏览
393人参与
#
你都用AI做什么
#
56810次浏览
536人参与
#
体制内上岸心路历程
#
41206次浏览
242人参与
#
春招/暑实第一面是哪家?
#
115511次浏览
1212人参与
#
求职遇到的搞笑事件
#
205804次浏览
1068人参与
#
春招你拿到offer了吗
#
939478次浏览
10328人参与
#
0offer是寒冬太冷还是我太菜
#
1819121次浏览
10764人参与
#
牛友の3月总结
#
59196次浏览
287人参与
#
你都收到了哪些公司的感谢信?
#
5519139次浏览
36250人参与
#
你是怎么和mt相处的?
#
112503次浏览
588人参与
#
我的第一份实习怎么找的
#
294377次浏览
2122人参与
#
找工作时遇到的神仙HR
#
1256554次浏览
5963人参与
#
第一次面试
#
1157604次浏览
13954人参与
#
xxx岗位的一天
#
58124次浏览
290人参与
#
数据人offer决赛圈怎么选
#
383071次浏览
2985人参与
#
比亚迪求职进展汇总
#
946687次浏览
3168人参与
#
你总挂在第__面?
#
37942次浏览
258人参与
牛客网
牛客网在线编程
牛客网题解
牛客企业服务