120875. 평행 (자바) 문제에 함정이 있습니다 꼭 읽어보세요!

2023. 8. 6. 13:33·문제 풀이/Programmers
728x90
반응형
SMALL


☀️12번 케이스부터 막히시는 분들
4개의 점을 각각 a,b,c,d라고 했을 때, 12번 케이스부터 틀리신 분들은 아마 아래와 같은 6가지 경우의 수를 생각하셨을 겁니다.
a-b, a-c, a-d, b-c, b-d, c-d
그런데 문제에 적혀있는 '주어진 네 개의 점을 두 개씩 이었을 때'를 다시 잘 곱씹어보면서 혹시 아래와 같은 3가지 경우의 수 만을 의미하는게 아닌가 하고 코드를 처음부터 다시 짜보았고 통과했습니다.
[a-b, c-d],[a-c, b-d],[a-d, b-c]
4개의 점들로 임의의 두 쌍을 만들었을 때 그 두 쌍이 이루는 직선이 서로 평행한지를 묻고 있습니다. 제한사항을 보시면 서로 다른 두개 이상의 점이 겹치는 경우는 없다고 나와 있습니다. 
이 부분이 힌트입니다.

☀️2번 케이스가 막히시는 분들
분모를 분자로 나눴을때 나머지가 0이라면 정수로 타입을 잡아도 되지만
나머지가 0이 아닌 수라면 소수점을 포함한 관계를 나타내야 하기 때문에 타입이 double이여야 합니다.
따라서 형변환을 통해 값을 double로 잡아 수의 크기를 더 넓혀야 합니다.
class Solution {
    public int solution(int[][] dots) {
        int answer =0;
    boolean c1 = ((dots[0][1] - dots[1][1])/(double) (dots[0][0] - dots[1][0])) == ((dots[2][1] - dots[3][1])/(double)( dots[2][0] - dots[3][0]));
	boolean c2 = ((dots[0][1] - dots[2][1])/(double) (dots[0][0] - dots[2][0])) == ((dots[1][1] - dots[3][1])/(double) (dots[1][0] - dots[3][0]));
	boolean c3 = ((dots[0][1] - dots[3][1])/(double) (dots[0][0] - dots[3][0])) == ((dots[1][1] - dots[2][1])/(double)(dots[1][0] - dots[2][0]));

	
	
	if(c1||c2 || c3) answer =1;
        return answer;
    }
}

 

728x90
반응형
SMALL

'문제 풀이 > Programmers' 카테고리의 다른 글

[자바]120956 프로그래머스 옹알이 문제 코드 첨부  (1) 2023.08.12
프로그래머스42889. 실패율 자바  (0) 2023.08.09
120866. 안전지대 자바  (2) 2023.08.01
181916. 주사위 게임 3 자바  (0) 2023.07.31
181893. 배열 조각하기 자바  (0) 2023.07.31
'문제 풀이/Programmers' 카테고리의 다른 글
  • [자바]120956 프로그래머스 옹알이 문제 코드 첨부
  • 프로그래머스42889. 실패율 자바
  • 120866. 안전지대 자바
  • 181916. 주사위 게임 3 자바
공부하고 기억하는 공간
공부하고 기억하는 공간
IT 비전공자로 시작하여 훌륭한 개발자가 되기 위해 공부하고 있는 공간입니다. 틀린 내용이나 부족한 부분이 있으면 댓글로 알려주세요 바로 수정하겠습니다.
    250x250
  • 공부하고 기억하는 공간
    IT - railroad
    공부하고 기억하는 공간
  • 전체
    오늘
    어제
    • 분류 전체보기 (314) N
      • 면접 준비 (36) N
        • OS (6)
        • Spring Security (0)
        • Java (2) N
        • DB (9)
        • Network (3)
      • ElasticSearch (2)
      • Kafka (4)
      • Spring (22)
        • Spring Cloud (7)
        • Security6 (5)
        • JPA (12)
        • 프로젝트 리팩토링 회고록 (4)
        • Logging (8)
        • Batch (2)
      • Redis (17)
        • Redis 개념 (8)
        • Redis 채팅 (5)
        • Redis 읽기쓰기 전략 (1)
      • AWS (11)
      • 리눅스 (29)
        • 리눅스 마스터 2급 (5)
        • 네트워크(기초) (7)
        • 리눅스의 이해 (6)
        • 리눅스의 설치 (2)
        • 리눅스 운영 및 관리 (6)
      • JAVA-기초 (16)
        • JAVA기본 (11)
        • Design Pattern (5)
      • JSP (27)
        • JSP 기본 개념 (10)
        • JSP (1)
      • SQL (1)
      • TIL (36)
      • 문제 풀이 (2)
        • Programmers (9)
        • 백준 문제풀이 (28)
      • JavaScript (10)
      • HTML (17)
      • Ngrinder (1)
        • Ngrinder 문서 정리 (1)
  • 블로그 메뉴

    • 링크

    • 공지사항

    • 인기 글

    • 태그

      redis 채팅
      자바 면접질문
      Spring
      redis
      Til
      Springframework
      HTML
      스프링프레임워크
      자바스크립트
      자바
      자바 알고리즘
      레디스
      JavaScript
      spring redis
      JS
      jsp request
      리눅스
      자바 면접
      jsp기초
      java
      Spring Data Redis
      JSP
      CSS
      리눅스마스터2급정리
      자바 반복문
      백준
      리눅스마스터2급
      자바기초
      springsecurity
      프로그래머스
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.3
    공부하고 기억하는 공간
    120875. 평행 (자바) 문제에 함정이 있습니다 꼭 읽어보세요!
    상단으로

    티스토리툴바