Coding Test/BaekJoon_Python

BaekJoon - 5597번: 과제 안 내신 분..? (1차원 배열, PYTHON)

  • -
728x90

제목학원에서 가져온 표지

과제를 해 온 사람은 이렇게나 많은데.. 그렇다면 안 해 온 사람은 어떻게 알아낼까??

이에 대한 문제를 풀어보도록 하겠다

 한 번 한 번 예제를 돌려보기가 굉장한 노가다인 점, 유의하길 바란다

※ 안한 사람 = Someone Who didn't

문제 링크

 

5597번: 과제 안 내신 분..?

X대학 M교수님은 프로그래밍 수업을 맡고 있다. 교실엔 학생이 30명이 있는데, 학생 명부엔 각 학생별로 1번부터 30번까지 출석번호가 붙어 있다. 교수님이 내준 특별과제를 28명이 제출했는데,

www.acmicpc.net


코드 작성 순서

  1. 제출 한 과제 목록을 불러올 list 생성
  2. 전체 학생 번호 list 생성
  3. 제출한 학생 목록 list에 넣기
  4. 전체 학생 목록 list에 넣기
  5. 전체 학생 목록과 제출한 학생 목록의 차집합 구하기
  6. 차집합 작은 수부터 정렬
  7. 안 해온 학생 앞 두 번호 출력(결과)
# 1. 제출 한 과제 목록을 불러올 list 생성
SWD = []
# 2. 전체 학생 번호 list 생성
swd = []
# 3. 제출한 학생 목록 list에 넣기
for i in range(28):
    SWD.append(int(input()))
# 4. 전체 학생 목록 list에 넣기
for i in range(30):
    swd.append(i+1)

# 5. 전체 학생 목록과 제출한 학생 목록의 차집합 구하기
swd_p = list(set(swd) - set(SWD))
# 6. 차집합 작은 수 부터 정렬
swd_p.sort()

# 7. 안 해온 학생 앞 두 번호 출력
print(swd_p[0])
print(swd_p[1])

굉장히 힘든 과정(출력)


728x90
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.