goblin
리니팅
goblin

공지사항

전체 방문자
오늘
어제
  • 분류 전체보기 (75)
    • 개발 (31)
      • Spring (12)
      • JPA (4)
      • JAVA (4)
      • Python (6)
      • Docker (1)
      • Error (3)
      • Spring Cloud로 개발하는 MSA (1)
    • 알고리즘 (32)
    • 자료구조 (3)
    • 컴퓨터 개론 (3)
    • 개인 프로젝트 (4)
      • 쇼핑몰 만들기 (4)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

인기 글

태그

  • Spring
  • springboot
  • inflearn
  • 알고리즘
  • sorting
  • 구현
  • tdd
  • 문자열
  • 객체
  • 스프링
  • 백준
  • 파워자바
  • 자료구조
  • 스프링부트
  • 코딩테스트
  • 정렬
  • 동적계획법
  • python
  • 다이나믹 프로그래밍
  • 파이썬
  • JPA
  • 다이나믹프로그래밍
  • gradle
  • 프로그래머스
  • BOJ
  • dp
  • 코딩테스트연습
  • 클래스
  • 조합
  • Intellij

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
goblin

리니팅

알고리즘

[BOJ/Python3(파이썬)] 백준 1946번: 신입 사원

2021. 12. 22. 11:28
728x90

https://www.acmicpc.net/problem/1946

 

1946번: 신입 사원

첫째 줄에는 테스트 케이스의 개수 T(1 ≤ T ≤ 20)가 주어진다. 각 테스트 케이스의 첫째 줄에 지원자의 숫자 N(1 ≤ N ≤ 100,000)이 주어진다. 둘째 줄부터 N개 줄에는 각각의 지원자의 서류심사 성

www.acmicpc.net

 

import sys

T = int(input()) 

for i in range(0,T):
    Cnt = 1
    people = []
    
    N = int(input())
    for i in range(N):
        doc, Interview = map(int,sys.stdin.readline().split())
        people.append([doc, Interview])

    people.sort() 
    Max = people[0][1]
    
    for i in range(1,N):
        if Max > people[i][1]:
            Cnt += 1
            Max = people[i][1]

    print(Cnt)

 

✔ 풀이 과정

  1. 일단 서류심사 성적을 기준으로 오름차순 정렬을 한다. (서류심사 성적이 더 높은 경우는 면접시험 성적 고려 X)
  2. 지원자 i가 선발되기 위해서는 자신보다 서류심사 성적이 좋은 사람보다 면접심사 성적이 좋아야 한다. 비교 대상으로 서류심사 성적이 1위인 사람을 두고, 차례로 면접심사 성적을 비교하다가 i의 면접심사 성적이 높다면 카운트를 증가시키고 비교 대상을 현재 값으로 바꿔준다.

✔ input()을 사용했다가 시간초과가 떠서 sys.stdin.readline()을 이용해 해결했다.

 
728x90
반응형

'알고리즘' 카테고리의 다른 글

[BOJ/Python3(파이썬)] 백준 2217번: 로프  (0) 2021.12.22
[BOJ/Python3(파이썬)] 백준 2839번: 설탕 배달  (0) 2021.12.22
[BOJ/Python3(파이썬)] 백준 10162번: 전자레인지  (0) 2021.12.22
[BOJ/Python3(파이썬)] 백준 11721번: 열개씩 끊어 출력하기  (0) 2021.12.20
[BOJ/Python3(파이썬)] 백준 11718번: 그대로 출력하기  (0) 2021.12.20
    '알고리즘' 카테고리의 다른 글
    • [BOJ/Python3(파이썬)] 백준 2839번: 설탕 배달
    • [BOJ/Python3(파이썬)] 백준 10162번: 전자레인지
    • [BOJ/Python3(파이썬)] 백준 11721번: 열개씩 끊어 출력하기
    • [BOJ/Python3(파이썬)] 백준 11718번: 그대로 출력하기
    goblin
    goblin

    티스토리툴바