강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

개발하는쿼카님의 프로필 이미지
개발하는쿼카

작성한 질문수

자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비

4. 연속부분수열(복합적 문제)

풀이 질문

작성

·

214

1

public int getNumber(int num, int sumResult, int[] arr) {
    int answer = 0;
    int sum = 0;
    int pi = 0;
    int i = 0;
    while(pi < num) {
        sum += arr[pi];
        if(sum > sumResult) {
            pi = i++;
            sum = 0;
        }
        else if (sum == sumResult) {
            answer++;
        }
        pi++;
    }
    return answer;
}

채점은 정답으로 나왔는데,,

혹시 다른 예외상황이 있을까요...?

답변 1

0

김태원님의 프로필 이미지
김태원
지식공유자

안녕하세요^^

에지케이스는 없어 보입니다. 하지만 영상의 방법과 위에 코드의 시간복잡도를 비교해보시기 바랍니다.

위 코드가 two pointers로 하는 O(n)보다 비효율적입니다.

감사합니다.!!

개발하는쿼카님의 프로필 이미지
개발하는쿼카

작성한 질문수

질문하기