250x250
Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 안드로이드
- 막내의막무가내 안드로이드 코틀린
- 막내의막무가내 목표 및 회고
- 막무가내
- 막내의막무가내 안드로이드
- flutter network call
- 막내의막무가내 프로그래밍
- 막내의막무가내 플러터 flutter
- 막내의막무가내 코틀린
- 막내의막무가내
- 막내의막무가내 코볼 COBOL
- 안드로이드 sunflower
- 막내의막무가내 rxjava
- 막내의막무가내 알고리즘
- 부스트코스에이스
- 막내의막무가내 안드로이드 에러 해결
- 막내의막무가내 코틀린 안드로이드
- 막내의막무가내 일상
- 막내의막무가내 플러터
- 막내의막무가내 SQL
- Fragment
- 막내의 막무가내
- 프래그먼트
- 막내의 막무가내 알고리즘
- 2022년 6월 일상
- 주택가 잠실새내
- 안드로이드 Sunflower 스터디
- 프로그래머스 알고리즘
- 부스트코스
- 주엽역 생활맥주
Archives
- Today
- Total
막내의 막무가내 프로그래밍 & 일상
[알고리즘] 프로그래머스 단속카메라 (java) -그리디(greedy)- 본문
728x90
https://programmers.co.kr/learn/courses/30/lessons/42884?language=java
프로그래머스 LEVEL3 의 단속카메라 문제를 풀어봤습니다. ㅎㅎ
풀이 방법은 다음과 같습니다.
1. 종착지점을 기준으로 오름차순 정렬합니다.
2. 반복문을 통해 routes를 갖고옵니다.
3. 카메라 설치 지점과 현재 route의 진입 지점과 비교하여 카메라 설치 지점에 커버되는 곳이면 PASS 아닌 경우는
카메라 설치 지점을 현재 route 의 종착 지점으로 변경해주고 카메라 설치 개수가 한개 늘어납니다.
풀이는 다음과 같습니다.
[Java]
import java.util.Arrays;
import java.util.Comparator;
class Solution {
public static void main(String[] args) {
Solution solution = new Solution();
solution.solution(new int[][]{{-20, 15}, {-14, -5}, {-18, -13}, {-5, -3}});
}
public int solution(int[][] routes) {
int answer = 0;
Arrays.sort(routes, new Comparator<int[]>() {
@Override
public int compare(int[] o1, int[] o2) {
return o1[1] - o2[1];
}
});
int min = -30001;
for (int i = 0; i < routes.length; i++) {
if(routes[i][0] > min){
answer++;
min = routes[i][1];
}
}
return answer;
}
}
댓글과 공감은 큰 힘이 됩니다. 감사합니다.
728x90
'알고리즘 > 그리디' 카테고리의 다른 글
[알고리즘] 백준 1541 잃어버린 괄호 -그리디- 자바 코틀린 (0) | 2020.10.12 |
---|---|
[알고리즘] 백준 11399 ATM -그리디- 자바 (0) | 2020.10.12 |
[알고리즘] 프로그래머스 큰 수 만들기 -그리디- (0) | 2020.04.09 |
[알고리즘] 프로그래머스 조이스틱 -그리디- (0) | 2020.03.18 |
[알고리즘] 백준 1931 회의실배정 -그리디- (0) | 2020.03.05 |
Comments