[프로그래머스] 평행 - Java

Yunki Kim·2023년 1월 10일
0

프로그래머스

목록 보기
86/101
post-thumbnail

문제


링크


코드

import java.util.ArrayList;
import java.util.List;

class Solution {
    public int solution(int[][] dots) {
        List<Double> slopes = new ArrayList<>();
        for (int i = 0; i < dots.length; i++) {
            for (int j = (i + 1); j < dots.length; j++) {
                double slope = (double) (dots[i][1] - dots[j][1]) / (dots[i][0] - dots[j][0]);
                if (slopes.contains(slope)) return 1;

                slopes.add(slope);
            }
        }
        return 0;
    }
}

리뷰

두 선분이 평행하는 조건은 기울기가 같아야한다.

이중 반복문을 통해 점4개를 이용하여 만들어 질 수 있는 선분을 만들도록하여
선분의 기울기를 ArrayList를 이용해 담아 주었고

if문을 통해 새로운 선분이 리스트에 담아있는 값과 같다면 기울기가 같은 선분이 있는 것이므로 평행하는 선분이 있음을 알 수 있다.

0개의 댓글