프로그래머스 코딩테스트 입문 겹치는 선분의 길이 [JAVA] - 22년 10월 11일

Denia·2022년 10월 11일
0

코딩테스트 준비

목록 보기
93/201
post-custom-banner
import java.util.HashMap;
import java.util.Map;

class Solution {
    public int solution(int[][] lines) {
        int answer = 0;

        Map<String, Integer> map = new HashMap<String, Integer>();

        for (int[] line : lines) {
            int tempMin = Math.min(line[0], line[1]);
            int tempMax = Math.max(line[0], line[1]);
            for (int i = tempMin + 1; i < tempMax + 1; i++) {
                String str = (i - 1) + "/" + i;
                map.put(str, map.getOrDefault(str, 0) + 1);
            }
        }

        for (Integer value : map.values()) {
            if (value > 1) answer++;
        }

        return answer;
    }
}

class Solution {
    public int solution(int[][] lines) {
        int answer = 0;

        int[] lineArr = new int[200];

        for (int[] line : lines) {
            int tempMin = Math.min(line[0], line[1]);
            int tempMax = Math.max(line[0], line[1]);
            for (int i = tempMin; i < tempMax + 1; i++) {
                lineArr[i + 100]++;
            }
        }

        for (int i = 1; i < lineArr.length; i++) {
            if (lineArr[i - 1] > 1 && lineArr[i] > 1) {
                answer++;
            }
        }

        return answer;
    }
}

profile
HW -> FW -> Web
post-custom-banner

0개의 댓글