[항해99 취업 리부트 코스 학습일지] JS로 코테 푸는 방법을 물어보았습니다.

이강혁·2024년 4월 4일
0

항해99

목록 보기
10/13

매니저님이 JS마스터시길래 예전에 heap 문제를 JS로 풀다가 안 돼서 파이썬으로 갈아탔는데 매니저님은 어떻게 하셨는지 여쭤봤다.

코드를 주셨음. 실제 시험장에서 힙 같은 것을 생으로 구현하려면 내부에서 필요한 부분만 추상화를 해서 풀어도 됨.
메서드 같은 것들 클래스로 하지말고 전역변수 등으로 추상화해서 접근하면 된다고 하셨음. 아이디어만 가져가기.

6번에 관해서도 여쭤봤다.

6번 이거. 시간적으로 많이 오버플로가 나는 상황인가요?
네 맞아요. 결국은 6번도 최적화이긴한데 하지만 나는 아예 접근하는 방법부터 막혔었다.
아이디어는 다 내서 풀긴 한 것 같은데 결국은 아이디어는 똑같음. 이전에 말씀하셨던 것처럼 알고리즘 문제를 풀다보면 한 가지에서만 아이디어가 나오는 것이 아니라 골드부터는 시간복잡도를 깎기 위해 갖고 있던 다른 태그에서 사용한 자료구조나 잡기술을 사용해야함.
크게 줄일 수 있는 것이 불필요한 분기처리임. 그것은 return을 빨리 해버리는 것이 중요함.

sys.exit(0)을 해서 막았지만 for문이 중첩이 되어 있음.

O(n^3)으로 해도 풀 수 있는 방법이 있음.
정답을 배열에서 뽑지말고 answer라는 변수를 하나 만들어서 캐싱하는 것처럼 만들기. 초기화를 도메인을 벗어나는 값으로 주고 2중 3중 포문을 돌면서 값의 합을 set에다가 저장하고 answer라는 변수를 통해서 break하기 그러고 2중 for문이니까 answer의 초기값이 아닐 경우에 멈춰버리기

멘토님은 3중으로 전범위 돌다가 answer값 해고 flag세워서 얼리리턴을 시켰는데 그렇게하면 시간이 줄어들 것이라고 하셨음.

오늘 같이 이런 상황에서 몇 번문제 어려웠다 같은 것들 댓글로 남겨달라고도 하셨다.

profile
사용자불량

0개의 댓글