문제
https://school.programmers.co.kr/learn/courses/18/lessons/1878?language=java
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
문제 분석 및 이해
1. 직사각형을 만들어야 한다.
2. 직사각형에 필요한 점4개중 3개의 좌표값이 주어진다.
3. 나머지 한점의 좌표를 Return 한다.
(좌표는 [x축, y축] 순서로 Return 해야 한다.)
- 해당 문제는 코딩의 능력 보다는 이해하는 것이 가장 중요하다고 느꼈다.
좌표 3개가 주어지기 때문에 그 점을 활용 하면 된다.
소거법을 사용하여 해결 했다.
직사각형을 구성하는 4점의 좌표는 결국 x축 2개가 같고, y축 2개가 같다는 점을 이용했다.
나머지 한점을 구하는 것 이기 때문에 x축의 1,2 인덱스의 좌표가 같다면? 0번 인덱스의 x축이
우리에게 필요한 x축의 값과 같다는 결론이다!
* y축도 같은 방식으로 구한다.
* 2차원 배열에 대해서 기본적인 것을 알고 있다는 전제하에 가능하다.
2차원 배열에 대해서 아래링크에서 확인 가능합니다.
https://lucas-owner.tistory.com/11
[Java] 1차원 배열 & 2차원 배열
이 글에서는 Java의 1,2차원 배열에 대해서 알아보도록 하겠습니다!! - 1차원 배열의 선언, 초기화, 출력 방법. - 2차원 배열의 선언, 초기화, 출력 방법. 1차원 배열이란? Java뿐 아니라 모든 언어에서
lucas-owner.tistory.com
입출력 예시
v | result |
[[1,4], [3,4], [3,10]] | [1,10] |
[[1,1], [2,2], [1,2]] | [2,1] |
#예시 1번
- 세 점이 [1,4], [3,4], [3,10]에 위치하였을 때 [1,10]에 점이 위치 해야한다.
#예시 2번
- 세 점이 [1, 1], [2, 2], [1, 2] 위치에 있을 때, [2, 1]에 점이 위치하면 직사각형이 됩니다.
Code


전체 코드는 아래의 링크에서 확인해보세요!
'Coding Test > Programmers' 카테고리의 다른 글
[프로그래머스] 최대공약수와 최대공배수(Lv1) - Java (0) | 2022.12.11 |
---|---|
[프로그래머스] 명예의전당(Lv1) - Java (0) | 2022.12.08 |
[프로그래머스] 문자열나누기(Lv1) - Java (0) | 2022.12.07 |
댓글