๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Programmers lv-0

ํ‰ํ–‰ - Java [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ž…๋ฌธ]

by ๊ทคํ”ผํ‚ค 2022. 11. 28.

 

โค๏ธ Problem

๋”๋ณด๊ธฐ
  • ๋ฌธ์ œ
    ์  ๋„ค ๊ฐœ์˜ ์ขŒํ‘œ๋ฅผ ๋‹ด์€ ์ด์ฐจ์› ๋ฐฐ์—ด dots๊ฐ€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค.
    [ [x1, y1], [x2, y2], [x3, y3], [x4, y4] ]
    ์ฃผ์–ด์ง„ ๋„ค ๊ฐœ์˜ ์ ์„ ๋‘ ๊ฐœ์”ฉ ์ด์—ˆ์„ ๋•Œ, ๋‘ ์ง์„ ์ด ํ‰ํ–‰์ด ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ์œผ๋ฉด 1์„ ์—†์œผ๋ฉด 0์„ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด๋ณด์„ธ์š”.

 

  • ์ œํ•œ ์‚ฌํ•ญ
    • 0 ≤ dots์˜ ์›์†Œ ≤ 100
    • dots์˜ ๊ธธ์ด = 4
    • dots์˜ ์›์†Œ์˜ ๊ธธ์ด = 2
    • dots์˜ ์›์†Œ๋Š” [x, y] ํ˜•ํƒœ์ด๋ฉฐ x, y๋Š” ์ •์ˆ˜์ž…๋‹ˆ๋‹ค.
    • ์„œ๋กœ ๋‹ค๋ฅธ ๋‘๊ฐœ ์ด์ƒ์˜ ์ ์ด ๊ฒน์น˜๋Š” ๊ฒฝ์šฐ๋Š” ์—†์Šต๋‹ˆ๋‹ค.
    • ๋‘ ์ง์„ ์ด ๊ฒน์น˜๋Š” ๊ฒฝ์šฐ(์ผ์น˜ํ•˜๋Š” ๊ฒฝ์šฐ)์—๋„ 1์„ return ํ•ด์ฃผ์„ธ์š”.
    • ์ž„์˜์˜ ๋‘ ์ ์„ ์ด์€ ์ง์„ ์ด x์ถ• ๋˜๋Š” y์ถ•๊ณผ ํ‰ํ–‰ํ•œ ๊ฒฝ์šฐ๋Š” ์ฃผ์–ด์ง€์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

 

  • ์ž…์ถœ๋ ฅ ์˜ˆ & ์„ค๋ช…
no dots result
1 [[1, 4], [9, 2], [3, 8], [11, 6]] 1
2 [[3, 5], [4, 1], [2, 4], [5, 10]] 0
  1. ์  [1, 4], [3, 8]์„ ์ž‡๊ณ  [9, 2], [11, 6]๋ฅผ ์ด์œผ๋ฉด ๋‘ ์„ ๋ถ„์€ ํ‰ํ–‰ํ•ฉ๋‹ˆ๋‹ค.
  2. ์ ์„ ์–ด๋–ป๊ฒŒ ์—ฐ๊ฒฐํ•ด๋„ ํ‰ํ–‰ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

 


 

๐Ÿ’› Solution

ํ’€์ด

import java.util.ArrayList;

class Solution {
    public int solution(int[][] dots) {
        int answer = 0;
        ArrayList<Double> arr = new ArrayList<>();
        for(int i=0; i<dots.length-1; i++) {
            if (answer == 1) {
                break;
            } else {
                for(int j=i+1; j<dots.length; j++) {
                    double tmp = (double) (dots[i][1]-dots[j][1]) / (dots[i][0]-dots[j][0]);
                    if(arr.contains(tmp)) {
                        answer = 1;
                        break;
                    } else {
                        arr.add(tmp);;
                    }
                }
            }
        }
        return answer;
    }
}

 

์ฒ˜๋ฆฌ์†๋„ Very Good

 


 

๐Ÿ’œ Comment

์˜ค๋Š˜ ์ด ๋ฌธ์ œ๋ฅผ ํฌ์ŠคํŒ…ํ•œ ์ด์œ ๋Š” "ํ‰ํ–‰"์ด๋ผ๋Š” ๊ฐœ๋… ๋•Œ๋ฌธ์ด๋‹ค. "๋‘ ์„ ์ด ํ‰ํ–‰ํ•˜๋‹ค"๋Š” ๊ฒƒ์€ ๊ณง ๋‘ ์„ ์˜ ๊ธฐ์šธ๊ธฐ๊ฐ€ ๋™์ผํ•˜๋‹ค๋Š” ์˜๋ฏธ๋ผ๋Š” ๊ฑธ ๋„ˆ๋ฌด ์˜ค๋žœ ์‹œ๊ฐ„ ์žŠ๊ณ  ์žˆ์—ˆ๋‹ค.

์ถœ์ฒ˜ : https://ko.khanacademy.org/math/cc-eighth-grade-math/cc-8th-linear-equations-functions/8th-slope/a/slope-from-two-points

 

๊ธฐ์šธ๊ธฐ๋ž€? (๊ฐœ๋… ์ดํ•ดํ•˜๊ธฐ) | ๊ธฐ์šธ๊ธฐ (์ค‘๋“ฑ2ํ•™๋…„) | Khan Academy

๋‘ ์ ์„ ์ด์šฉํ•ด ๊ธฐ์šธ๊ธฐ๋ฅผ ๊ตฌํ•˜๋Š” ์˜ˆ์ œ๋ฅผ ํ’€์–ด ๋ด…์‹œ๋‹ค.

ko.khanacademy.org

 

Khan Academy์— ๋‚˜์™”๋“ฏ์ด ๋ฏธ๊ตญ 8ํ•™๋…„์˜ ์ˆ˜ํ•™๊ณผ๋ชฉ > ์ผ์ฐจ๋ฐฉ์ •์‹๊ณผ ์ผ์ฐจํ•จ์ˆ˜ > ๊ธฐ์šธ๊ธฐ ํŒŒํŠธ์ด๋‹ค. (์šฐ๋ฆฌ๋‚˜๋ผ ์ค‘๋“ฑ 2ํ•™๋…„ ์ˆ˜ํ•™ ์ˆ˜์ค€์ธ ์…ˆ)

์ค‘ํ•™๊ต ์ˆ˜ํ•™์„ ๋‹ค์‹œ ๊ณต๋ถ€๋ฅผ ํ•ด์•ผํ•  ๊ฒƒ ๊ฐ™๋‹ค..๐Ÿ˜…

 

7์ !!!!!!!!! ํ˜„์žฌ ์ˆœ์œ„ 13543์œ„๐Ÿคฉ๐Ÿคฉ

 

 

 

๋Œ“๊ธ€