전체 글125 유클리드 호제법 백준의 정수론 문제를 살펴보다, 유클리드 호제법에 대해 알게 되었다. 어떤 것인지 간단하게 파악하고, 이를 이용해 문제를 푼 것에 대해 짤막히 기록한다. 유클리드 호제법 자연수 혹은 정수 사이의 최대공약수(Greatest Common Denominator: GCD)를 구하기 위한 알고리즘. a와 b의 최대공약수는, a / b의 나머지 r과 b의 최대공약수와 같다. 이를 실제 함수로 구현하면 재귀 혹은 반복을 통해 구현할 수 있다. 나는 아래와 같은 코드를 작성해 문제풀이에 활용하였다. const getGCD = (a, b) => { if (a === b) return a; if (a === 1 || b === 1) return 1; if (b === 0) return a; return getGCD(b, .. 2023. 10. 29. Github 커밋 내역(잔디) 반영 안 되는 이슈 어느날 내 알고리즘 레포지터리의 이상한 점을 눈치챘다. 그것은 커밋을 했는데도 깃허브 잔디에 반영이 되지 않는다는 것. 나름 꾸준히 알고리즘 문제를 풀고 있음에도 커밋 내역이 반영되지 않는 것은 억울할 것만 같아 원인과 해결방법을 찾아보았다. 원인 대부분의 원인이 깃허브에 등록된 이메일/닉네임과 로컬의 이메일/닉네임이 달라서 생기는 이슈였다. 로컬의 깃 설정을 확인하는 방법은 터미널에서 아래의 명령어를 사용하는 것이다. git config --list 나의 경우 이메일은 괜찮았는데 닉네임이 깃허브와 달랐다. 추측컨대 맥에 등록된 이름으로 설정되어있었던 것 같다... 아마도. 따라서 로컬의 이름을 내 깃허브 닉네임으로 변경해주었다. 명령어는 아래와 같다. git config --global user.na.. 2023. 10. 25. 백준에서 JS로 문제 풀이하기 + 이런저런 메모(+추가: 2023.11.22) 앞서 올린 백트래킹 게시물에서 언급했듯, 얼마 전부터 시간이 날 때 조금씩조금씩 알고리즘 문제 풀이를 하고 있다. 주로 백준에서 문제를 풀고 있는데, 백준에서 문제를 풀 때 어떻게 풀고 있는지 + 문제 풀 때 개인적으로 알아두면 좋을 것 같은 점을 간단하게 기록해두려 한다. 백준에서 JS로 문제를 풀기 위한 세팅 예전에 백준에서 문제를 풀 때는 C++를 사용했는데, 이제는 거의 잊어버리기도 했고 업무를 JS로 하다 보니 JS로 문제를 풀어야겠다는 생각으로 아무 생각 없이 언어 설정을 살펴보았다. 하지만 자바스크립트는 목록에 보이지 않았고... node.js만 덩그러니 있어서 뭔가 싶던 도중 검색을 통해 JS는 node.js를 선택해야 함 + 입력값을 직접 처리해야 함 이라는 정보를 얻게 되었다. JS로의.. 2023. 10. 23. 백트래킹 근래에 꾸준한 공부 습관을 다시금 들이고자 틈틈이 알고리즘 문제를 풀고 있다. 그러던 와중, '백트래킹'에 대해 조금 공부하게 되어 개념과 푼 문제를 간단하게 정리해보려 한다. 백트래킹(Backtracking) 현재 상황에서 탐색 가능한 모든 경로를 다 탐색하다, 조건에 맞지 않는 경로를 탐색하게 될 경우 다시 뒤로 돌아가서 다른 경로를 탐색하는 알고리즘. 이 때 해결하려는 문제는 트리 구조로 표현되며, 이를 탐색하는 데에는 깊이 우선 탐색을 사용한다. DFS와는 달리 조건(한정 조건이라고 하는 듯)에 맞지 않는 해가 나오면 이전으로 돌아가기 때문에 최종적으로 탐색 시간이 줄어든다는 특징이 있음. 백트래킹을 접하며 참고했던 어느 블로그에서 DFS와 백트래킹을 유사점(교차점)이 있는 교집합 관계같다 표현한.. 2023. 10. 15. 정처기 실기 시험 후기 작년 여름 정처기 필기 시험을 치고 그 후기를 공유한 적이 있었다. 이 당시 바로 실기를 칠지 말지 고민하고 있었는데, 결국은 실기를 좀 미루는 것을 택했고 그 결과로 올해 4월 말에 실기 시험을 치고 왔다. 6월 9일에 결과가 나왔는데 다행히 합격이라 후기나 남겨볼까 한다. 실기 시험을 접수했을 때, 시험범위가 겹친다곤 하나 필기를 친지 어언 1년이 되어가고 있었기 때문에 사실상 공부를 새로운 기분으로 해야 했으며, 시험을 준비할 수 있는 기간이 3주 조금 넘었기에 여유가 많지도 않았었다. 그나마 다행인 것은 전공자 버프로 코딩이나 SQL 문제 등은 비교적 덜 보고 넘어갈 수 있었기에, 공부하는 동안에는 방대한 범위의 개념들을 외우는 데 집중했다. 시험 공부는 필기와 크게 다르지 않았으나, 아무래도 전.. 2023. 6. 15. Notifee 정리 React Native에서 로컬 알림을 보낼 수 있게 해주는 패키지는 대표적으로 react-native-notifications, react-native-push-notifications, notifee 등이 있다. 이중 널리 쓰이는 것으로는 react-native-push-notifications 이 있는데, 깃허브를 살펴보니 현재 패키지가 활발히 관리되고 있는 상태가 아니기 때문에 다른 패키지 사용을 고려해보라는 내용이 적혀있었다. 대체안으로써 추천된 것 중 하나가 Notifee인데, 과거엔 유료였으나 얼마 전부터 완전 무료로 풀린 것으로 보인다. 해서 기본적인 사용법을 기록해둔다. 설치 npm install --save @notifee/react-native yarn add @notifee/reac.. 2023. 5. 20. 이전 1 ··· 8 9 10 11 12 13 14 ··· 21 다음