寻找同班小朋友js

题目:

幼儿园两个班的小朋友排队时混在了一起
每个小朋友都知道自己跟前面一个小朋友是不是同班
请你帮忙把同班的小朋友找出来
小朋友的编号为整数
与前面一个小朋友同班用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/N 2/Y 3/N 4/Y
 输出
 1 2
 3 4
 说明:2的同班标记为Y因此和1同班
            3的同班标记位N因此和1,2不同班
            4的同班标记位Y因此和3同班


解题思路:

1、当第一个同学的标识为N,那么我们将他放入到班级1当中,并将flag改为2,此时遍历下一个数时,相当于是站在第一个同学所在的班级1来看,那么如果第二个同学的标识为Y,就加入到同一个班级,否则加入到另一个班级,并且再次修改flag为1,回到了另一个班级的角度来继续判断该同学的下一个同学。

2、得到不同班级的同学后,都

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值