만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

참가자 명단

면접 대비

시간 제한1초메모리 제한512 MB

요약
각 반에서 먼저 신청한 M명을 뽑고, 홀수 반(파랑팀)을 짝수 반(하양팀)보다 먼저 출력합니다. 각 반은 이름 길이순으로 정렬하고, 길이가 같으면 사전순으로 정렬합니다.
난이도

쉬움10점 중 3점

유형
구현, 정렬
정답자
아직 제출이 없습니다

문제

\

백남이의 모교인 고등학교에서 체육대회를 개최하려 한다.

백남이는 학생들의 체육대회 신청을 관리하게 되었다.

체육대회는 1부터 NN까지의 학급만 참여하며, 각 학급당 최대 MM명까지 선착순으로 참가할 수 있다. 단, NN은 짝수이다.

또한, 체육대회의 팀은 학급이 홀수일 때 청팀, 짝수일 때 백팀으로 나눈다.

이에 따라 백남이는 체육대회 참가자 명단 프로그램을 제작하려 한다. 프로그램은 다음 규칙을 따른다.

  • 청팀을 먼저, 백팀을 나중에 출력한다.
  • 각 팀에 대해 학급을 오름차순으로 출력한다.
  • 각 학급에 대해 학생의 이름을 길이가 짧은 것부터 출력한다. 길이가 같다면 사전 순으로 출력한다.

입력

첫째 줄에 학급 수인 NN과 학급당 신청 가능한 인원수 MM이 주어진다. NN은 짝수이고, 2≤N≤102 \le N \le 10, 1≤M≤101 \le M \le 10이다.

둘째 줄부터 신청된 순서대로 학생의 학급과 이름이 주어진다. 학생의 학급은 NN을 초과하지 않는다. 이름은 모두 소문자이며 15자를 초과하지 않는다.

학급과 이름이 동일한 학생은 존재하지 않는다.

신청할 수 있는 최대 학생 수는 500명이다.

입력의 마지막은 0 0으로 나타낸다.

출력

첫째 줄부터 프로그램의 순서에 맞게 학생의 학급과 이름을 공백으로 구분하여 출력한다.

예제1

  1. 예제 1

    입력
    4 2
    3 sunyoung
    2 junkyu
    2 dohyun
    1 minjun
    3 kihyun
    2 damin
    4 hyunsu
    0 0
    
    예상 출력
    1 minjun
    3 kihyun
    3 sunyoung
    2 dohyun
    2 junkyu
    4 hyunsu