강의로 돌아가기
Sanas92

JS와 JAVA가 코드가 같아도 오류가 생깁니다

아래 내용은 JAVA입니다

import java.util.*;

class Solution {
    public int solution(int[] people, int limit) {
        int searchStartIndex = 0;
        int boatCount = people.length;

        Arrays.sort(people);

        for(int indexOfPeople = people.length - 1; indexOfPeople >= 0; indexOfPeople--) {
            if(indexOfPeople == searchStartIndex) break;

            if(people[indexOfPeople] + people[searchStartIndex] <= limit) {
                searchStartIndex += 1;
                boatCount -= 1;
            }

            if(indexOfPeople == searchStartIndex) break;
        }

        return boatCount;
    }
}

아래 내용은 JS코드입니다

function solution(people, limit) {
    var searchStartIndex = 0;
    var boatCount = people.length;

    people.sort();

    for(var indexOfPeople = people.length - 1; indexOfPeople > searchStartIndex; indexOfPeople--) {
        if(people[indexOfPeople] + people[searchStartIndex] <= limit) {
            searchStartIndex += 1;
            boatCount -= 1;
        }
    }

    return boatCount;
}

같은 코드인데 JS만 안됩니다. 저번에도 이런 경우가 있었는데 무슨 문제가 있는걸까요??

작성중인 코드―Solution.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import java.util.*;

class Solution {
    public int solution(int[] people, int limit) {
        int searchStartIndex = 0;
        int boatCount = people.length;

        Arrays.sort(people);

        for(int indexOfPeople = people.length - 1; indexOfPeople >= 0; indexOfPeople--) {
            if(indexOfPeople == searchStartIndex) break;

            if(people[indexOfPeople] + people[searchStartIndex] <= limit) {
                searchStartIndex += 1;
                boatCount -= 1;
            }

            if(indexOfPeople == searchStartIndex) break;
        }

        return boatCount;
    }
}
1 개의 답변
Demi

js코드에는 break문이 없는걸로 보아, 둘을 같은 코드라고하기에는 무리가 있는 것 같습니다 😅

  • Sanas92
    아 캡쳐가 잘못됬는데 돌릴떄는 Java코드랑 같은 코드를 사용했습니다 ㅠㅠㅠㅠㅠㅠㅠㅠ Java로 합격한 후에 JS로 돌렸는데 오류가 발생하는걸로 보아 스코프문제로 sort()가 완료되기 전 for문이 돌아간거 같기도 하네요.. Sanas92 2019.02.28 14:01
답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.