https://school.programmers.co.kr/learn/courses/30/lessons/120876#
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
import java.util.*;
class Solution {
public int solution(int[][] lines) {
int answer = 0;
Map<Integer,Integer> map = new HashMap<>();
for(int[] line : lines){
int start = line[0];
int end = line[1];
for(int i = start ; i < end ; i++){
map.merge(i,1,(v1,v2)->v1+1);
}
}
boolean flag = false;
int prev = -100;
for(int i = -100 ; i <= 100 ; i++){
int cnt = map.getOrDefault(i,0);
if(cnt == 0 || cnt == 1){
if(flag){
flag = false;
answer += i - prev;
}
continue;
}else{
if(!flag){
prev = i;
}
flag = true;
}
}
if(flag){
answer += 100 - prev;
}
return answer;
}
}
'알고리즘' 카테고리의 다른 글
프로그래머스 저주의 숫자 3 (JAVA) (0) | 2022.10.31 |
---|---|
프로그래머스 안전지대 (JAVA) (0) | 2022.10.30 |
프로그래머스 캐릭터의 좌표(JAVA) (0) | 2022.10.28 |
프로그래머스 옹알이2 (JAVA) (0) | 2022.10.27 |
프로그래머스 두수의 곱 (JAVA) (0) | 2022.10.26 |