주 1회 회사 동기들이랑 알고리즘 스터디를 진행하고 있다.
현재 진행하고 있는 스터디는 오프라인 코딩테스트로도 많이 활용하고 있는 Codility.
각자 풀고 자기가 푼 소스를 리뷰하는 형식인데, 뜻 깊고 보람도 있고 참으로 도움이 많이 된다 :)
뛰어나진 않지만 각 단원 별로 100% 만들기 위해 노력 중이고, 기록 및 공유하기 위해 글을 작성한다.
바로가기 >Codility >FrogJump
문제 해석 : 현재 위치(X) 에서 도착해야하는 위치(Y) 까지 거리(D) 만큼 뛰었을 때의 최소 점프 횟수를 리턴하는 문제
문제 풀이 : 일단, 뛰어야 하는 거리(D) 가 없으면 로직 안타도록 먼저 처리하고,
몫(mod) 과 나머지(jump) 개념을 이용해서 문제를 풀었다 :)
요고 핵심은 "나눗셈을 할 때 0의 위치에 따라 NaN / Infinity 가 된다는 점" 🌝
class Solution {
public int solution(int X, int Y, int D) {
// distance 가 없으면 0으로 return.
if (D == 0) return 0;
int mod = (Y-X)%D;
int jump = (Y-X)/D;
return mod == 0 ? jump : jump+1;
}
}
반응형
'Self Dev. > Codility' 카테고리의 다른 글
[Codility] TapeEquilibrium 100% (0) | 2019.09.08 |
---|---|
[Codility] PermMissingElem 100% (0) | 2019.09.08 |
[Codility] CyclicRotation 100% (0) | 2019.09.07 |
[Codility] OddOccurrencesInArray 100% (0) | 2019.09.07 |
[Codility] BinaryGap 100% (0) | 2019.06.02 |
댓글