2022 KAKAO BLIND RECRUITMENT 문제를 다시 풀었다.
총 7문제
신고 결과 받기 : 무난한 구현
문제였다.
k진수에서 소수 개수 구하기 : 무난한 구현
문제였다.
진법 변환 알고리즘을 공부할 필요성을 느꼈다.
주차 요금 계산: 무난한 구현
문제였다.
양궁대회 : DFS를 이용한 조합 문제
였지만, return 부분에서 약간 애를 먹었다.
다른 풀이를 찾아보니 combinations_with_replacement
를 사용하더라.
양과 늑대 : DFS
문제였다. 문제에서 2진 트리를 언급해서, Node와 Binary Tree 클래스로 구현을 하려 했는데 못했다. 다른 풀이를 참고했는데, 생각 외로 코드가 간결했다. DFS와 사고력을 좀 더 키워야 할 필요성을 느꼈다.
파괴되지 않은 건물 : 정확성은 통과했지만, 효율성은 통과하지 못했다. 찾아보니 2차원 리스트의 누적합
을 이용하는 문제였다. 1차원에서의 누적합은 알고 있었지만, 2차원에 대해서는 생각을 못했다. 더 공부해야겠다.
사라지는 발판 : 처음 풀었을 때 아예 손도 대지 못했다. 문제도 아직 이해를 못했다. 찾아보니 MinMaxTree
를 사용해서 풀 수 있다고 한다.
역시 카카오 코테는 어렵다.
코드를 하나하나 뜯어서 분석하자.
React Context
에 대해서 배웠다.useEffect
와 useReducer
에 대해서 배웠다.useEffect
는 Side Effect를 처리하는 Hook이고, 종속성 인자를 가지는데, 이 종속성을 어떻게 설정하느냐에 따라 실행방식이 달라진다.useReducer
는 useState와 마찬가지로 state의 관리를 도와주지만, 더 복잡한 state에 특히 유용하게 쓰인다. 다수의 state들이 함께 속해 있는 경우 또는 같이 바뀌거나 서로 연관된 경우, 다른 state를 기반으로 하는 state를 업데이트 할 때 사용할 수 있으며, 궁극적으로는 state를 처리하는 로직을 컴포넌트 바깥에 작성할 수 있다.