깊은바다거북
개발 공부 기록
깊은바다거북
전체 방문자
오늘
어제
  • 분류 전체보기 (219)
    • JAVA (9)
    • JavaScript (15)
    • 스파르타코딩클럽 (11)
      • [내일배움단] 웹개발 종합반 개발일지 (5)
      • [내일배움캠프] 프로젝트와 트러블 슈팅 (6)
    • SQL | NoSQL (4)
    • CS 등등 (0)
    • TIL | WIL (173)
    • 기타 에러 해결 (3)
    • 내 살 길 궁리 (4)

인기 글

최근 글

최근 댓글

태그

  • Trie
  • Inorder Traversal(중위 순회)
  • leetcode-cli
  • TypeScript
  • BST(이진 탐색 트리)
  • Linked List
  • 자료 구조
  • 자잘한 에러 해결
  • Leetcode
  • tree
  • 자바스크립트 기초 문법
  • 코딩테스트 연습문제
  • DFS(깊이우선탐색)
  • 재귀 함수
  • 팀 프로젝트
  • 01. 미니 프로젝트
  • 트러블 슈팅 Troubleshooting
  • 시간 복잡도
  • 혼자 공부하는 자바스크립트
  • Binary Tree(이진 트리)
  • Til
  • 프로그래머스
  • Preorder Traversal(전위 순회)
  • TIT (Today I Troubleshot)
  • POST / GET 요청
  • 점화식(Recurrence Relation)
  • BFS(너비우선탐색)
  • 최소 힙(Min Heap)
  • Backtracking(백트래킹)
  • 최대 힙(Max Heap)
hELLO · Designed By 정상우.
깊은바다거북

개발 공부 기록

8/23 (수) Binary search 와 Bit mask 해법 TIL
TIL | WIL

8/23 (수) Binary search 와 Bit mask 해법 TIL

2023. 8. 23. 23:57

공부한 것

  • LeetCode #287. Find the Duplicate Number
    LeetCode - The World's Leading Online Programming Learning Platform
    Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview.
    https://leetcode.com/problems/find-the-duplicate-number/description/?envType=list&envId=rus4c4ci

    내가 푼 방식과 다른 해답을 8개 더 추가하였다.

구상 중

  • 문제풀이 코드 제출 후 실행 결과를 여러 개 모아서 소요 메모리와 시간 추이를 시각화하기:
    1. 로그인 + 유저의 정보 중 submissions 정보에 접근하는 방법들(다음 Leetcode 질문 페이지의 답변을 전부 살펴봤다: https://leetcode.com/discuss/general-discussion/1297705/is-there-public-api-endpoints-available-for-leetcode):
      • 방법1: https://github.com/JeremyTsaii/leetcode-stats-api

        ⇒ 주소 끝에 내 Leetcode 유저ID를 입력하기만 하면 JSON 결과를 받아볼 수 있는 방법. 로그인해야 얻을 수 있는 정보는 볼 수 없다(submissions의 구체적인 항목이 나오지 않는다)는 점에서 탈락.

      • 방법2:

        ⇒ 주소 끝에 Leetcode 유저ID르 ㄹ입력하기만 하면 JSON 결과를 받아볼 수 있는 방법. 역시나 탈락이다.

      • 방법3: https://github.com/akarsh1995/leetcode-graphql-queries

        ⇒ 로그인에 딱 필요한 EETCODE_SESSION 와 csrftoken 쿠키를 언급하고 있는 걸로 보아 로그인을 하는 것은 확실해보이나, 내가 GraphQL 쿼리를 잘 모르고 샘플 결과에서 submissions 항목도 특별히 보이진 않아서 패스했다.

      • 방법4: https://github.com/realvect0r/leetcode-api

        ⇒ 이곳을 보다가 방법5로 넘어감. 보류중

      • 방법5: https://github.com/skygragon/leetcode-cli

        진행중 (수많은 트러블슈팅은 다음에 이어서…)

        • Document와 detail docment
          • (그냥 doc: https://skygragon.github.io/leetcode-cli/commands#plugin)
          • (추가 doc https://skygragon.github.io/leetcode-cli/advanced#plugins)
          • (추가 doc에서 이동 가능한 plugins 레파지토리: https://github.com/skygragon/leetcode-cli-plugins)
          • leetcode-cli레파지토리에서 “csrfmiddlewaretoken”로 검색해서 뜯어보던 중 (https://github.com/skygragon/leetcode-cli/blob/5245886992ceb64bfb322256b2bdc24184b36d76/lib/plugins/leetcode.js#L482)
        • user.json을 작성했더니 됐다는 이슈 링크 (해결의 핵심 실마리!! : https://github.com/skygragon/leetcode-cli/issues/194#issuecomment-559839631)
        • 실제로 작동하는 user.json파일과 위치해야할 곳
        • vscode에 leetcode api를 적용한 프로젝트도 있는데 이게 leetcode-cli를 기반으로 하는 거였음. 근데 신기하게 vscode 확장팩으로 깔고 ‘쿠키로 우회해서 로그인’하는 CUI 버튼으로 여차저차 로그인에 성공했더니 leetcode-cli 명령줄 프로그램도 로그인되어 있었다!

          (vscode leetcode-cli 깃헙이슈: https://github.com/LeetCode-OpenSource/vscode-leetcode/issues/478)

          (vscode leetcode-cli 깃헙 홈페이지: https://github.com/LeetCode-OpenSource/vscode-leetcode)

        • leetcode-cli 하위 확장팩, cookies.chrome 강추! 및 그 역할(브라우저와 명령줄 프로그램에 한 session id로 동시에 로그인상태 유지 가능…)
          • 무슨 프로필을 수동으로 입력해야하는 줄 알고 이슈 찾아보고 코드 뜯어보고 난리였다… 하지만 건드릴 필요조차 없는 설정값이었고….
        • vscode 위에서 작동하는 확장팩은 내 쓸모는 아님. user.json에 필요한 작동하는 속성값을 추릴 수 있었다는 데 의의를 두고, 삭제해도 될 듯하다.
        • 누군가는 vsc-leetcode-cli라는 임시 라이브러리를 설치해서 됐다는데 이걸 설치했기 때문에 leetcode -cl 같은 명령어가 된 건지, 아니면 아무 쓸모 없는 설치였던 건지 잘 모르겠다.
          • (npm 홈페이지: https://www.npmjs.com/package/vsc-leetcode-cli)
          • (’vsc-leetcode-cli를 추천해준 누군가’의 글: https://github.com/skygragon/leetcode-cli/issues/195#issuecomment-569324781)
        • 로그인 명령어 $leetcode user -l -vvv
        • chatGPT한테도 잠깐 물어본, powershell 터미널과 command prompt 터미널의 차이 (powershell에서는 git add leet…[tab, tab…]이 되는데 cmd에서는 tab해도 자동완성 안됨)(powershell에서는 글로벌로 설치한 leetcode 명령어가 안 먹혀서 npx leetcode user -l이라고 해줘야 하고, cmd에서는 먹혀서 단순히 leetcode user도 수행됨. 이거는 알겠다. powershell은 보안문제 때문에 스크립트 실행을 허용하지 않고 어쩌구저쩌구…)


Uploaded by N2T

    'TIL | WIL' 카테고리의 다른 글
    • 8/25 (금) TypeScript 테스트 코드, 성공적 TIL
    • 8/24 (목) 퀴즈 풀이 디렉토리에 TypeScript를 적용하다 TIL, TIT
    • 8/22 (화) LeetCode API 조사중 TIL, TIT
    • 8/21 (월) 풀이 제출 후 소요 시간 시각화하기 TIL, TIT
    깊은바다거북
    깊은바다거북

    티스토리툴바