Programmers lv-0
ํํ - Java [ํ๋ก๊ทธ๋๋จธ์ค ์ ๋ฌธ]
๊ทคํผํค
2022. 11. 28. 15:33
โค๏ธ 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, 4], [3, 8]์ ์๊ณ [9, 2], [11, 6]๋ฅผ ์ด์ผ๋ฉด ๋ ์ ๋ถ์ ํํํฉ๋๋ค.
- ์ ์ ์ด๋ป๊ฒ ์ฐ๊ฒฐํด๋ ํํํ์ง ์์ต๋๋ค.
๐ 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
์ค๋ ์ด ๋ฌธ์ ๋ฅผ ํฌ์คํ ํ ์ด์ ๋ "ํํ"์ด๋ผ๋ ๊ฐ๋ ๋๋ฌธ์ด๋ค. "๋ ์ ์ด ํํํ๋ค"๋ ๊ฒ์ ๊ณง ๋ ์ ์ ๊ธฐ์ธ๊ธฐ๊ฐ ๋์ผํ๋ค๋ ์๋ฏธ๋ผ๋ ๊ฑธ ๋๋ฌด ์ค๋ ์๊ฐ ์๊ณ ์์๋ค.
๊ธฐ์ธ๊ธฐ๋? (๊ฐ๋ ์ดํดํ๊ธฐ) | ๊ธฐ์ธ๊ธฐ (์ค๋ฑ2ํ๋ ) | Khan Academy
๋ ์ ์ ์ด์ฉํด ๊ธฐ์ธ๊ธฐ๋ฅผ ๊ตฌํ๋ ์์ ๋ฅผ ํ์ด ๋ด ์๋ค.
ko.khanacademy.org
Khan Academy์ ๋์๋ฏ์ด ๋ฏธ๊ตญ 8ํ๋ ์ ์ํ๊ณผ๋ชฉ > ์ผ์ฐจ๋ฐฉ์ ์๊ณผ ์ผ์ฐจํจ์ > ๊ธฐ์ธ๊ธฐ ํํธ์ด๋ค. (์ฐ๋ฆฌ๋๋ผ ์ค๋ฑ 2ํ๋ ์ํ ์์ค์ธ ์ )
์คํ๊ต ์ํ์ ๋ค์ ๊ณต๋ถ๋ฅผ ํด์ผํ ๊ฒ ๊ฐ๋ค..๐