본문 바로가기
Self Dev./Codility

[Codility] PassingCars 100%

by 지구 2019. 9. 8.
주 1회 회사 동기들이랑 알고리즘 스터디를 진행하고 있다.
현재 진행하고 있는 스터디는 오프라인 코딩테스트로도 많이 활용하고 있는 Codility.
각자 풀고 자기가 푼 소스를 리뷰하는 형식인데, 뜻 깊고 보람도 있고 참으로 도움이 많이 된다 :)
뛰어나진 않지만 각 단원 별로 100% 만들기 위해 노력 중이고, 기록 및 공유하기 위해 글을 작성한다.

바로가기   >Codility   >PassingCars

 

문제 해석 : 0(동쪽)과 1(서쪽)으로 이루어진 배열에서 동시에 이동하는 차의 개수를 리턴하는 문제

문제 풀이 : 0(동쪽)을 기준으로 그 다음에 1(서쪽)으로 가는 차의 개수를 찾아서 다 더한 뒤 리턴하도록 코딩했다..

요고 핵심은 "for문 안에 있는 예외처리하는 if문 !! " 함수 🌝
for 문 밖에서 예외처리하면 90% 나온다. (최대값 초과하여 90% 나오는 것으로 추측)

 

 

class Solution {
    public int solution(int[] A) {
        
        int zeroCnt = 0; // 동쪽으로 가는 차 개수 카운트
        int result = 0; // 최종 리턴값
        for(int value : A) {
            if (value == 0) { zeroCnt++; }
            else { result += zeroCnt; }
            
            if (result > 1000000000) {
                return -1;
            }
        }
        
        return result;
    }
}

 

 

반응형

'Self Dev. > Codility' 카테고리의 다른 글

[Codility] MaxProductOfThree 100%  (0) 2019.09.08
[Codility] MinAvgTwoSlice 100%  (0) 2019.09.08
[Codility] MissingInteger 100%  (0) 2019.09.08
[Codility] PermCheck 100%  (0) 2019.09.08
[Codility] TapeEquilibrium 100%  (0) 2019.09.08

댓글