강의로 돌아가기
만두피야

출력 범위를 초과한다는데.... 어떻게 개선하면 좋을까요?

public int solution(int[] numbers, int target) {
int answer = 0;

Queue bfs=new LinkedList<>();
int cnt=0;

bfs.add(numbers[0]);
bfs.add(-numbers[0]);
while(!bfs.isEmpty()) {
//System.out.println(Arrays.toString(bfs.toArray()));
//System.out.println(cnt);

if(bfs.size()Math.pow(2, numbers.length)) {
Iterator it =bfs.iterator();
while(it.hasNext()) {
int data=it.next();
if(data
target)answer++;
}
break;

}

if(bfs.size()>Math.pow(2, cnt+1) ) {

cnt++;

}

int temp=bfs.poll();

bfs.add(temp+numbers[cnt]);
bfs.add(temp-numbers[cnt]);

System.out.println(-----------------------);

}

return answer;
}

1 개의 답변
김경환

System.out.println() 같이 출력하는 부분 다빼보세요.
출력이 너무 많이 되면 그런 오류가 나더라고요.

답변 쓰기
이 입력폼은 마크다운 문법을 지원합니다. 마크다운 가이드 를 참고하세요.