Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
Tags
- 압축권한
- 신고결과받기
- 프로그래머스
- c드라이브에서 압축 안될때
- db
- programmers
- 2022 KAKAO BLIND RECRUITMENT
- Linux
- usb 공간있는데
- maven-install
- mybatis
- 팰린드롬개수
- 데이터넘기기
- 도커
- ipv6->ipv4
- LV1
- 특정ip접근
- 폴더압축 권한문제
- c드라이브에서 압축
- 관리자권한 문제
- PostgreSQL
- usb 포맷시스템
- 방화벽정책
- 6tunnel
- 특정ip차단
- 로또의 최고 순위와 처저 순위
- Docker
- 파일이 너무 커서 안들어감
- java
- on conflict
Archives
- Today
- Total
개발 기록일지
프로그래머스 모의테스트- 직사각형의 나머지 한점구하기 본문
문제 설명
직사각형을 만드는 데 필요한 4개의 점 중 3개의 좌표가 주어질 때, 나머지 한 점의 좌표를 구하려고 합니다. 점 3개의 좌표가 들어있는 배열 v가 매개변수로 주어질 때, 직사각형을 만드는 데 필요한 나머지 한 점의 좌표를 return 하도록 solution 함수를 완성해주세요. 단, 직사각형의 각 변은 x축, y축에 평행하며, 반드시 직사각형을 만들 수 있는 경우만 입력으로 주어집니다.
제한사항
- v는 세 점의 좌표가 들어있는 2차원 배열입니다.
- v의 각 원소는 점의 좌표를 나타내며, 좌표는 [x축 좌표, y축 좌표] 순으로 주어집니다.
- 좌표값은 1 이상 10억 이하의 자연수입니다.
- 직사각형을 만드는 데 필요한 나머지 한 점의 좌표를 [x축 좌표, y축 좌표] 순으로 담아 return 해주세요.
입출력 예
vresult
[[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]에 점이 위치하면 직사각형이 됩니다.
1번. 단순히 하나하나 비교하면서 봤을때
class Solution {
public int[] solution(int[][] v) {
int x,y;
if(v[0][0]==v[1][0]){
x=v[2][0];
}else if(v[0][0]==v[2][0]){
x=v[1][0];
}else{
x=v[0][0];
}
if(v[0][1]==v[1][1]){
y=v[2][1];
}else if(v[0][1]==v[2][1]){
y=v[1][1];
}else{
y=v[0][1];
}
int[] answer={x,y};
return answer;
}
}
2번. 반복문으로 바꿔봤을때
class Solution {
public int[] solution(int[][] v) {
int[] answer = new int[2];
for(int i=0;i<answer.length;i++){
if(v[0][i]==v[1][i]){
answer[i] = v[2][i];
}else if(v[0][i]==v[2][i]){
answer[i] = v[1][i];
}else if(v[1][i]==v[2][i]){
answer[i] = v[0][i];
}
}
return answer;
}
}
3번. XOR 방법으로 했을때
class Solution {
public int[] solution(int[][] v) {
int[] answer = new int[2];
answer[0]= v[0][0]^v[1][0]^v[2][0];
answer[1]= v[0][1]^v[1][1]^v[2][1];
return answer;
}
}
'프로그래밍 > 알고리즘 풀기' 카테고리의 다른 글
[프로그래머스] 모의테스트 팰린드롬 개수 구하기 (0) | 2022.10.12 |
---|---|
[LV1]소수 만들기(JAVA) (0) | 2022.03.30 |
[LV1]programmers 로또의 최고순위와 최저순위(JAVA) (0) | 2022.03.15 |
[LV1]programmers 신고결과받기(JAVA) (0) | 2022.03.14 |