华为OD机试 - 幼儿园分班问题(C++、Java、JavaScript、Python 全面解析)
引言
在华为OD机试中,考察编程逻辑、数据处理和复杂算法的题目层出不穷。其中,分班问题是其中一道考察字符串处理与逻辑判断的经典题目。考生需要根据输入,判断小朋友的分班情况并将结果输出。这篇文章将围绕该题目进行详细的分析,并提供C++、Java、Python、JavaScript四种语言的完整解题方案。通过逐行注释和详细解析,我们将确保你对该题目的解题思路有深入的理解。
题目背景
幼儿园的小朋友在排队时,两个班级的学生混在一起,输入给出了每个小朋友的编号以及他是否与前一个小朋友同班的标志。你需要根据这些信息,将所有小朋友分为两个班,并输出每个班的小朋友编号,编号按升序排列。
输入描述:
- 输入是一串以空格分隔的字符串,表示每个小朋友的编号以及他们是否和前一位同学同班的标志。格式为
编号/标志
,其中:编号
为一个小朋友的编号(整数),标志
为Y
或