문제
https://programmers.co.kr/learn/courses/30/lessons/12987
풀이
설명은 복잡하게 해놨는데, 문제는 굉장히 쉽다.
A와 B를 오름차순으로 정렬하고
B를 기준으로 순회하면서
현재 B값이 A보다 같거나 작을 경우 B의 다음 index 체크
현재 B값이 A보다 큰 경우를 A의 index를 증가
A: 1, 3, 5, 7
B: 2, 2, 6, 8
2 -> 6 -> 8
2는 3보다 작으므로 skip
순회가 끝난 후 A의 index가 답이 된다.
소스코드
import java.util.*;
class Solution {
public int solution(int[] A, int[] B) {
Arrays.sort(A);
Arrays.sort(B);
int idx = 0;
for(int i = 0; i < B.length; i++){
if(A[idx] >= B[i]) continue;
idx++;
}
return idx;
}
}
'💡Problem Solving > Programmers' 카테고리의 다른 글
[프로그래머스] 키패드 누르기 (Java) (0) | 2021.11.14 |
---|---|
[프로그래머스] 구명보트 (Java) (0) | 2021.11.12 |
[프로그래머스] 땅따먹기 (Java) (0) | 2021.11.09 |
[프로그래머스] 정수 삼각형 (Java) (0) | 2021.11.09 |
[프로그래머스] 기지국 설치 (Java) (0) | 2021.11.07 |