카테고리 없음
[TIL] 2018.10.27 Today I learned
leatherjean
2018. 11. 5. 01:16
코딜리티 문제
알고리즘 연습차원에서 코딜리티에서 나온 좌표 문제를 풀어보았습니다.
성장 포인트
for (int i = 0; i < integers.size(); i++) {
for (int j = 0; j < integers.size(); j++) {
if(i == j) {
continue;
}
for (int k = 0; k < integers.size(); k++) {
if(k == j || k == i){
continue;
}
for (int l = 0; l < integers.size(); l++) {
if(k == l || l == j || l == i){
continue;
}
max = Math.max(max, calculateDistance(integers.get(i),integers.get(j),integers.get(k),integers.get(l)));
}
}
}
}
...
Math.pow(Math.abs(a-c),2) + Math.pow(Math.abs(b-d),2);
주어진 숫자들을 리스트에 담아서 발생할 수 있는 모든 좌표값을 for문을 활용하여 모두 탐색하였다.
for문의 depth가 깊어질수록 같은 좌표를 사용하는 일이 없도록 조건이 하나씩 더 생기게 구현하였다.
Math.pow를 사용하여 제곱을 표현하였고, Math.abs를 사용하여 절대값을 구하였다.