华为OD机考2025B卷 - 分班问题/幼儿园分班(Java & Python& JS & C++ & C )

最新华为OD机试

真题目录:点击查看目录
华为OD面试真题精选:点击立即查看
华为OD机考2025B卷

题目描述

儿园两个班的小朋友在排队时混在了一起,每位小朋友都知道自己是否与前面一位小朋友同班,请你帮忙把同班的小朋友找出来。

小朋友的编号是整数,与前一位小朋友同班用Y表示,不同班用N表示。

输入描述

输入为空格分开的小朋友编号和是否同班标志。

比如:6/N 2/Y 3/N 4/Y,表示4位小朋友,2和6同班,3和2不同班,4和3同班。

其中,小朋友总数不超过999,每个小朋友编号大于0,小于等于999。

不考虑输入格式错误问题。

输出描述

输出为两行,每一行记录一个班小朋友的编号,编号用空格分开,且:

  1. 编号需按照大小升序排列,分班记录中第一个编号小的排在第一行。
  2. 若只有一个班的小朋友,第二行为空行。
  3. 若输入不符合要求,则直接输出字符串ERROR。

示例1

输入

1/N 2/Y 3/N 4/Y

输出

1 2
3 4

说明

2的同班标记为Y,因此和1同班。
3的同班标记为N,因此和1、2不同班。
4的同班标记为Y,因此和3同班。
所以1、2同班,3、4同班,输出为
1 2
3 4

示例2

输入

1/N 2/Y 3/N 4/Y 5/Y

输出

1 2
3 4 5

说明

解题思路

题目的要求是将一组小朋友按班级进行分类。输入由小朋友的编号和他们是否与前一位小朋友同班的标志组成。任务是根据这些标志将同班的小朋友归类并输出,遵循以下规则:

  1. 输入是小朋友编号与他们是否与前一位小朋友同班的标志,用空格分隔。编号后面跟随一个标志:

    • Y:表示与前一个小朋友同班。
    • N:表示与前一个小朋友不同班。
  2. 根据这些标志,小朋友们要被分成不同的班级。

示例分析

示例 1

输入:

1/N 2/Y 3/N 4/Y

解释:

  • 小朋友1是第一个,所以他是班级1的第一个成员。
  • 小朋友2与小朋友1同班(因为标志是Y),因此小朋友1和2同班,形成班级1。
  • 小朋友3与小朋友2不同班(标志是N),因此小朋友3在另一个班级,形成班级2。
  • 小朋友4与小朋友3同班(标志是Y),所以小朋友3和4同班,属于班级2。

输出:


                
### 华为OD机考相关内容及准备建议 #### 1. **华为OD机考概述** 华为OD机试作为招聘的重要环节之一,其通过率约为75%[^1]。然而需要注意的是,这并不意味着考试简单,而是因为候选人整体水平较高以及竞争激烈所致。具体的考核形式分为两个部分: -机考试:重点考察算法设计和编程能力。 - 在线作业:侧重于评估解决实际问题的能力、逻辑思维以及综合素质。 此外,华为OD机试共设有五个级别(D1至D5),分别对应公司内部的13到17级岗位需求。各级别的题目数量与难度存在显著差异,因此考生需根据目标职位调整备考策略。 #### 2. **考试内容详解** ##### (1)上机考试 上机考试通常涉及以下几个方面: - 数据结构基础:链表、栈、队列、树、图等数据结构的应用。 - 算法实现:排序算法(快速排序、归并排序)、查找算法(二分查找、哈希查找)以及其他经典算法的设计与优化。 - 编程语言掌握程度:推荐熟悉至少一种主流开发语言如C++JavaPython,并能熟练运用标准库函数完成复杂任务。 以下是基于常见考点的一个示例代码片段展示如何利用动态规划求解斐波那契数列: ```python def fibonacci(n, memo={}): if n <= 0: return 0 elif n == 1 or n == 2: return 1 if n not in memo: memo[n] = fibonacci(n - 1) + fibonacci(n - 2) return memo[n] print(fibonacci(10)) # 输出第10项的结果 ``` ##### (2)在线作业 相比传统的笔试模式,在线作业更注重实践操作技能和个人特质展现。它可能包括但不限于以下几种类型的任务: - 小型项目开发:给定一定背景描述后要求独立完成一段功能模块或者小型应用构建工作。 - 报告撰写:针对特定技术主题编写分析文档,体现研究能力和表达技巧。 - 团队协作模拟场景演练:与其他参与者共同讨论解决方案并分工执行计划。 #### 3. **备考建议** 为了提高成功几率,可以从以下几个方向着手准备: - 加强理论学习的同时多做练习题巩固知识点; - 参加各类竞赛积累实战经验,比如LeetCode周赛、Codeforces比赛等可以有效提升编码速度和质量; - 关注行业趋势和技术热点话题保持敏感度,适时更新个人简历资料使之更加贴合企业期望形象; 最后提醒各位应聘者务必重视时间管理,在有限时间内合理分配精力确保每道试题都能得到充分思考解答。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

算法大师

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值