이 문제는 3개의 수를 더했을때 소수를 어떻게 처리할까 고민을 하다가 정답 문제를 보고 이해를 한 케이스였다.
소수에 대한 개념은 알겠는데 어떻게 구현해야할까 고민을 많이 했는데 다른 사람의 정답을 보니
너무 어렵게만 생각하는거보다 단순하게 생각하는 것이 좋겠다 라는 생각이 들었다.
위 사진과 같은 3중 for문을 돌리게 되면은
위 사진과 같은 반복순서를 가지게 되고 총 4회를 반복하게 된다.
i j k 를 모두 더한 값을 최대값으로 잡고 다시 반복문을 돌리게 되면
1과 자신의 값만이 나누어지므로 cnt값을 올리고 cnt값이 2인 경우만 소수의 경우로 판단하고
answer 값을 +해준다.
3중 for문을 쓴다는건 굉장한 시간복잡도를 발생시키기 때문에 추후에 이 3중 for문을 쓰기에는
어려울수도 있으나 3중 for문 이외의 케이스는 생각이 나질 않았다.
다른 케이스를 찾으려고 했으나 대부분의 사람들 역시 3중 for문을 사용해서 다른 케이스는 찾지 못했다.
'algorithm' 카테고리의 다른 글
[프로그래머스] 약수의 개수와 덧셈 (0) | 2022.11.26 |
---|---|
[프로그래머스] Lv 1 신규 아이디 추천 (0) | 2022.11.23 |
[프로그래머스] Lv 1 시저 암호 (0) | 2022.11.23 |
[프로그래머스] Lv 1 문자열 내림차순으로 배치하기 (0) | 2022.11.23 |
[프로그래머스] Lv 1 최소 직사각형 (0) | 2022.11.22 |