[Java] 백준 1946 : 신입 사원
·
Algorithm
문제 링크 1. 노트에 좀 끄적이다가 아이디어가 떠올라 코드를 쭉 썼다. 아무 생각 없이 제출했으나 시간 초과.. 나는 list를 이용해서 서류 성적을 기준으로 정렬하고 list를 순회하며 값을 비교하기 위해 이중 for문을 사용하였다. 하지만, 이중 for문을 사용하면 $O(N^{2})$ 인데 지원자의 최대 수가 $100,000$ 이므로 시간 초과가 날 수밖에 없다. 결국 이중 for문을 사용하지 않는 방법을 찾아야 하는데 찾지 못해 풀이를 참고하였다. 2. 그 방법은 생각보다 단순했다. 두 성적 순위는 모두 1위부터 N위까지 동석차 없이 결정된다고 가정한다. 문제에서, 동석차가 없다고 하였으므로 사용자 정의 Class를 만들 필요 없이 배열의 인덱스 값을 석차로 설정하면 된다! 그러면 성적 정렬을 할..