앞으로 매일 꾸준히 코딩테스트를 진행하면서 단계를 높여가보자.
외과의사 머쓱이는 응급실에 온 환자의 응급도를 기준으로 진료 순서를 정하려고 합니다. 정수 배열 emergency가 매개변수로 주어질 때 응급도가 높은 순서대로 진료 순서를 정한 배열을 return하도록 solution 함수를 완성해주세요.
중복된 원소는 없습니다.
1 ≤ emergency의 길이 ≤ 10
1 ≤ emergency의 원소 ≤ 100

class Solution {
public int[] solution(int[] emergency) {
int[] answer = new int[emergency.length];
for(int i = 0; i < emergency.length; i++) {
for(int j = 0; j < emergency.length; j++) {
if(emergency[i] < emergency[j]) {
answer[i]++;
}
}
answer[i]++;
}
return answer;
}
}
2중 반복문을 돌면서 배열의 값 중에서 낮은 배열에 1씩 더해준다.
1) 첫 번째 반복문은 모든 환자를 하나씩 확인하는 반복문. i는 현재 환자를 가리킴.
2) 두 번째 반복문은 현재 환자 i와 비교한 다른 환자를 선택하는 반복물. 다른 환자 j를 나타냄.
3) 조건문으로 현재 환자i의 응급도가 더 낮다면(다른 환자j의 응급도가 높다면), answer[i]++ 로 응급도가 높은 다른 환자가 한 명 더 있다고 더해준다.
4) 마지막 answer[i]++ 는 순서 배열의 모든 값에 +1 해준다. 시작이 1부터 하기 위함이다.