해결된 질문
작성
·
237
0
강사님:D 안녕하세요!
제가 지금 복습하면서 문제를 두번째로 풀어보고 있는 중에 새로 질문이 생겨서 남깁니다!
사실 처음에 풀 때는 해설하고 다른 방법으로 풀었어서, 그냥 이런 방법도 있구나~하면서 봐서 발견을 못 했었는데요.
소수 배열의 반 만큼만 순회를 하게 되면
100 == 47 + 53 의 케이스를 얻지 못하게 되지 않을까요??
만약 가장 작은 차를 갖는 쌍을 구한다면 [41, 59]보다 [47,53]이 적합할텐데
break 조건을
순회 > parseInt(소수.length / 2, 10) + 2로 바꾸면 또 다른 n 값이 들어왔을 때는 적합하지 않을 것 같구요...
제가 뭘 놓친 걸까요? 혼란스럽습니당... ㅠ_ㅠ
답변 4
2
안녕하세요,
sion007005님이 질문 주신 내용 확인해보니 소수 배열의 반 만큼만 순회를 하게 되면
[47,53]과 같은 골드바흐파티션 일부를 얻을 수 없는 문제를 발견하게 되었습니다.
그래서 다른 방법으로 다시 풀어보았습니다!
기존 코드에서 소수 배열의 반 만큼만 순회를 하는 방법이 아닌 n <= (숫자-n) 을 조건에 추가하여
중복된 파티션이 없게 하였습니다.
충분한 답변이 되지 않았거나 이해되지 않는 부분이 있다면 답글 남겨주시길 바랍니다.
항상 좋은 질문 감사합니다 😊
0
0
0