본문 바로가기

개발로그/알고리즘52

프로그래머스 Lv.0 진료순서 정하기 프로그래머스 Lv.0 진료순서 정하기 환자의 응급도를 기준으로 진료 순서를 정한다. 정수 배열 emergency가 매개변수로 주어질 때 응급도가 높은 순서대로 순서를 정한 배열을 return하라. emergency result [3, 76, 24] [3, 1, 2] [1, 2, 3, 4, 5, 6, 7] [7, 6, 5, 4, 3, 2, 1] [30, 10, 23, 6, 100] [2, 4, 3, 5, 1] ** 풀이 방법 ArrayList를 만들어서 emergency의 원소들을 저장한다. List list = new ArrayList(); for (int aa : emergency) list.add(aa); list를 내림차순으로 정렬한다. why? 응급도가 높은 순서대로 배치해야 하기 때문에 list.. 2023. 7. 21.
프로그래머스 Lv.0 가까운 수 프로그래머스 Lv.0 가까운 수 정수 배열 array와 정수 n이 매개변수로 주어질 때, array에 들어있는 정수 중 n과 가장 가까운 수를 return하라. 가장 가까운 수가 여러 개일 경우 더 작은 수를 return 한다. ** 풀이 방법 array배열을 오름차순 정렬했다. Arrays.sort(array); ArrayList를 생성해서 array배열 원소와 정수 n을 뺀 절대값을 저장한다. List a = new ArrayList(); for (int i=0; i 2023. 7. 20.
프로그래머스 Lv.0 다음에 올 숫자 프로그래머스 Lv.0 다음에 올 숫자 등차수열 혹은 등비수열 common이 매개변수로 주어질 때, 마지막 원소 다음으로 올 숫자를 return하라. common의 원소는 모두 정수이고, 등차수열 혹은 등비수열이 아닌 경우는 없다. ** 풀이 방법 common 배열이 등차수열인지 등비수열인지 검증할 ArrayList를 생성했다. 먼저 연속된 두 원소의 차를 ArrayList에 저장한다. List cha = new ArrayList(); for (int i=0; i 2023. 7. 19.
프로그래머스 Lv.0 리스트 자르기 프로그래머스 Lv.0 리스트 자르기 정수 n과 정수 3개가 담긴 리스트 slicer, 정수 여러 개가 담긴 리스트 num_list가 주어진다. slicer에 담긴 정수를 차례대로 a,b,c라고 할 때 n에 따라 num_list를 다음과 같이 슬라이싱 하려고 한다. n=1 : num_list의 0번 인덱스부터 b번 인덱스까지 n=2 : num_list의 a번 인덱스부터 마지막 인덱스까지 n=3 : num_list의 a번 인덱스부터 b번 인덱스까지 n=4 : num_list의 a번 인덱스부터 b번 인덱스까지 c간격으로 올바르게 슬라이싱한 리스트를 return하라. ** 풀이방법 ArrayList를 만들어서 n의 조건에 맞게 코드를 짰다. (for문 범위 설정에 주의할 것!) List list = new Ar.. 2023. 7. 17.
반응형