본문 바로가기
Problem Solving/Greedy

[그리디] 백준 1946번: 신입 사원

by ggyongi 2021. 5. 25.
반응형

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

 

1946번: 신입 사원

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

www.acmicpc.net

case = int(input())

for i in range(case):
    candidates = int(input())
    lst = []
    for j in range(candidates):
        sco1, sco2 = map(int, input().split())
        lst.append([sco1,sco2])
    lst = sorted(lst, key=lambda x: x[0])

    scores =[]
    for i in range(len(lst)):
        scores.append(lst[i][1])

    answer = 1
    min = scores[0]
    for i in range(1, len(scores)):
        if min > scores[i]:
            answer +=1
            min = scores[i]

    print(answer)

문제 이해를 잘못해서 완전 헤매다가 질문 목록들을 보고 잘못 이해했다는 것을 깨달았다.

입력값을 등수가 아니라 점수로 본 것. 점수로 봤기 때문에 중복을 고려했지만 사실 등수라 중복이 없다는 것을 깨달았다.

 

제대로 이해하고 나서는 금방 풀었다... 문제를 잘 읽자!

 

비전공자 네카라 신입 취업 노하우

시행착오 끝에 얻어낸 취업 노하우가 모두 담긴 전자책!

kmong.com

댓글