분류 전체보기 174

백준(BOJ) #21921 블로그 (Python) 누적합, 슬라이딩 윈도우

연속된 k 값들의 합중에서 가장 큰 값을 출력하는 문제의 대표유형21921번: 블로그https://www.acmicpc.net/problem/21921 풀이하는 유형은 다양할 것이다. 슬라이싱을 사용할 수도 있고 이중 반복문을 돌릴 수도 있겠다. 하지만 이것은 시간 초과가 날것이다!!! 최적화를 위해 새로운 알고리즘을 탐색하던 중에 슬라이딩 윈도우 를 공부하였다. 투포인터 슬라이딩 윈도우부분 배열의 크기가 고정적이라는 특징이 있다. 창문을 미는 것처럼! 한 칸씩 옆으로 움직이면서현재의 value를 저장하는 변수한 칸 오른쪽으로 이동하고, 대신 가장 왼쪽의 값을 value에서 빼는 방식으로 반복문을 배열의 길이만큼만 돌면 된다는 최적화를 이뤄낼 수 있다.# N, X : 블로그를 시작한 일수, 특정 기간 i..

Algorithm/BOJ 2023.04.20

[React] Warning: A component is changing an uncontrolled input to be controlled.

React MUI와 React-hook-form 을 함께 이용하기 위해서 useController 를 사용하던 중, 다음과 같은 에러를 만나게 되었다.⚠️Warrning: A component is changing an uncontrolled input to be controlled. uncontrolled…? 라고 해서 react hook form 관련 문제인가 싶었는데 아니었다.더 자세히 에러 메시지를 읽어보니 이렇게 나와있었다. this is likely caused by the value changing from undefined to a defined value, 처음에 빈값이어서 undefined 상태였던 값에 string이든 number을 주려고 해서 발생한 문제였다.대부분의 블로그들은 ||..

React 2023.04.18

[APS] 20. 힙(heap) 에 대해서 복기하기

1. 힙(Heap) 이란? 여러 개의 값 중에서 가장 크거나 작은 값을 빠르게 찾기 위해 만든 이진 트리짧게 힙(Heap)이라고 줄여서 부르기도 한다. 힙은 항상 완전 이진트리의 형태여야 한다.출처 : 나무위키 1. 완전 이진트리?포화 이진트리 ( 모든 잎의 level 이 동일한 이진트리. 잎이 아닌 노드들은 모두 2개의 자식을 갖는 트리 ) 를 오른쪽 leaf 부터 제거해서 얻어진 트리. 2. 시간 복잡도데이터의 삽입과 삭제에는 O(log(N))O(log(N))O(log(N))의 복잡도가 소요된다고 한다. 3. 우선순위 큐와 힙일반적인 큐(Queue)는 First in-First Out 구조입니다.즉, 어떤 부가적인 조건 없이 먼저 들어온 데이터가 먼저 나가는 구조였습니다.하지만 우선순위 큐(Prior..

Algorithm/APS 2023.04.18

백준(BOJ) #20920 영단어 암기는 괴로워 (Python), sorted, lambda 재활

하나의 리스트에서 이 단어가 몇 번 나왔는지 검색하려면 어떻게 해야할까. 알파벳 순, 반대로 알파벳 역순으로 정렬하려면? tuple에서 첫번째 원소가 아닌, 두번째 원소 혹은 다른 원소로 정렬하려면? dictionary는 중복된 키 값을 허용하지 않았던가? 효율적으로 개수를 세는 방법은? 이런 여러가지 물음표들을 머릿속에 가득 안은 채 문제를 풀었다.일단 시간초과가 여러번 났는데, 빠른 입출력을 해주니 시간이 많이 줄었다. 백준에서 빠른 입출력 받는 방법input()대신 sys를 사용하면 된다. 입력받으면 \n이 포함되기 때문에 rstrip()을 함꼐 사용해야 한다.import sys a = sys.stdin.readline.rstrip()python 에서 dictionary 의 특징dictionary는..

Algorithm/BOJ 2023.04.18

백준(BOJ) #20125 쿠키의 신체측정(Python) 이중 List 다루기 재활

알고리즘 문제 풀이시 기본이 되는 것은 이중 List를 다루는 것이다.입력받는 것부터 기억나지 않아 Python 기본을 다시 시작해보자면3 1 2 3 4 5 6 7 8 93 123 456 789name = list(map(int, input().split()))을 통해서 int형태로 받을 수 있다. string이 이어져있는 경우는 split 없이 받을 수 있다. list에서 index와 for문이 같이 필요한 경우에는 enumerate를 사용하면 된다.⇒ tuple 형태로 변환⇒ start를 사용해서 index를 0 이 아닌 1부터 사용가능하다.nums = ["A", "B", "C"] for i, num in enumerate (nums): # 0 A 1 B 2 C print(i, num, end=" "..

Algorithm/BOJ 2023.04.18

GitLab commit으로 GitHub에 잔디심기 (GitLab → GitHub 미러링)

ssafy에서 GitLab을 사용하다보니 Github 잔디가 휑해 보였다. 물론 잔디에 집착하는 사람은 아니지만, 탈모걸린 잔디밭에 약간이라도 생기를 불어넣어주고자 GitLab commit을 Github으로 연동할 방법을 찾아보았다.비어있는 GitHub에 GitLab Commit으로 잔디를 심어봅시다❗주의이 방법은 main branch 에 올라간 commit 만 반영이 되니 외않되!? 를 외치지 말고 main branch로 merge할 금요일에 다시 확인해봅시다.먼저 github token이 필요합니다. token이 없으신 분은 먼저 발급받고 진행해주세요. 1. GitHub에서 새 레포를 만든다.외부로 반출할 수 없는 코드라면 Private 레포로 만들자!레포지토리를 생성했다면 레포지토리 주소를 복사한다..

카테고리 없음 2023.04.18

[gsap] react gsap 스크롤 내리면 사라짐, 새로고침하면 스크롤 사라짐 (Gsap when Scroll down)

오늘의 배움 및 삽질부드러운 스크롤 이벤트를 위해서 gsap라이브러리를 사용하고 있다.스크롤을 내리면 작동이 안되는데, 이상하게 스크롤을 올리면 또 애니메이션이 작동하는 이상한 현상이 발생했다.(그리고 새로고침하면 스크롤이 사라지는 현상도….) 해결책1. Strict Mode 주석처리하기가장 간단한 방법은 스트릭 모드를 주석처리하는 것이다. App.tsx 혹은 Main.tsx의 StrictMode 를 없애준다. 2. gsap.context() 사용하기위의 방법이 가장 간단하지만, 근본적인 해결방법은 아니라고 할 수 있다! gsap x x react 공식문서에서는 이를 해결하기 위한 방법을 제시해준다.GSAP X ReactGSAP is a framework-agnostic animation library,..

React/gsap 2023.03.31

[RTF] 6. 외부에서 Model 가져오기 Models and Textures

이 페이지는 youtube에서 Devving It With Sohail 님의 영상을 보고 정리한 글입니다.Three js, React Three Fiber, React Three Drei Tutorial 2022 | Part 1 | Getting startedHey there! 🙋 This series is meant to get you started with React-Three-Fiber and React-Three-Drei EVEN if you don't have any prior experience with Three.js. I'll be explaining to you Three.js concepts as we go over implementing these with React.js. The n..

[RTF] 5. 애니메이션 Animation with GSAP

이 페이지는 youtube에서 Devving It With Sohail 님의 영상을 보고 정리한 글입니다.Three js, React Three Fiber, React Three Drei Tutorial 2022 | Part 1 | Getting startedHey there! 🙋 This series is meant to get you started with React-Three-Fiber and React-Three-Drei EVEN if you don't have any prior experience with Three.js. I'll be explaining to you Three.js concepts as we go over implementing these with React.js. The n..

[RTF] 4. 빛과 그림자 다루기 Light, Shadows, Environments

이 페이지는 youtube에서 Devving It With Sohail 님의 영상을 보고 정리한 글입니다.Three js, React Three Fiber, React Three Drei Tutorial 2022 | Part 1 | Getting startedHey there! 🙋 This series is meant to get you started with React-Three-Fiber and React-Three-Drei EVEN if you don't have any prior experience with Three.js. I'll be explaining to you Three.js concepts as we go over implementing these with React.js. The n..