본문 바로가기

BOJ

[BOJ][Python] 백준 23056번 - 참가자 명단

728x90

문제 링크: https://www.acmicpc.net/problem/23056

 

23056번: 참가자 명단

첫째 줄에 학급 수인 $N$과 학급당 신청 가능한 인원수 $M$이 주어진다. ($N$은 짝수이고 $2\leq N \leq 10$, $1\leq M \leq 10$) 둘째 줄부터 신청된 순서대로 학생의 학급과 이름이 주어진다. 학생의 학급은

www.acmicpc.net

 

 


문제 풀이

일단 정렬 문제이다. 하지만 정렬 기준이 총 4개인데, 파이썬의 내장 함수가 있어서 튜플로 만들어서 정렬하면 된다. 또는 람다로 해도 되겠다만...

일단 입력 부분에 학급을 입력받을텐데 학급이 홀수면 0, 짝수면 1이란 변수를 만들어주자.

그리고 원소 N개 일차원 배열을 만들어주자. 학급을 입력받아서 카운트하기 위함이다. 카운트가 M 초과가 된다면 그 학생은 참여 불가하다. 그리고 len()을 이용하여 길이도 저장해주자.

즉, 정렬할 배열의 원소는 (청팀/백팀(0/1), 학급, 이름의 길이, 이름)이 되겠다.이후 정렬을 하고 반복문을 이용해서 학급과 이름만 뽑아주면 된다.

 

코드

728x90