더북(TheBook)

우선 getMinimumPoint() 메서드부터 구현해봅시다. 구현은 간단합니다. points 리스트 안의 모든 Point 객체를 순회하면서 가장 작은 x, y 값을 찾고, 이를 사용하여 Point 객체를 만들어 반환하면 됩니다.

private Point getMinimumPoint(List<Point> points) {
    long x = Long.MAX_VALUE;
    long y = Long.MAX_VALUE;

    for (Point p : points) {
        if (p.x < x) x = p.x;
        if (p.y < y) y = p.y;
    }

    return new Point(x, y);
}

getMaximumPoint() 메서드도 마찬가지로 구현해줍니다. x, y 변수의 초깃값과 for 문 안에서 비교 연산자의 방향이 바뀌었음에 유의해주세요.

private Point getMaximumPoint(List<Point> points) {
    long x = Long.MIN_VALUE;
    long y = Long.MIN_VALUE;

    for (Point p : points) {
        if (p.x > x) x = p.x;
        if (p.y > y) y = p.y;
    }

    return new Point(x, y);
}

 

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.