분류 전체보기 86

[Algorithm] 04. 구현 : 개념 & (1) 상하좌우

구현 구현: 머릿속에 있는 알고리즘을 소스코드로 바꾸는 과정 완전 탐색: 모든 경우의 수를 주저 없이 다 계산하는 해결 방법 시뮬레이션: 문제에서 제시한 알고리즘을 한 단계씩 차례대로 직접 수행해야 하는 문제 유형 문제 여행가 A는 N x N 크기의 정사각형 공간 위에 서 있다. 이 공간은 1 x 1 크기의 정사각형으로 나누어져 있다. 가자 왼쪽 위 좌표는 (1,1)이며, 가장 오른쪽 아래 좌표는 (N,N)에 해당한다. 여행가 A는 상, 하, 좌, 우 방향으롣이동할 수 있으며, 시작 좌표는 항상 (1,1)이다. 우리 앞에는 여행가 A가 이동할 계획이 적힌 계획서가 놓여 있다. 계획서에는 하나의 줄에 띄어쓰기를 기준으로 하여 L, R, U, D 중 하나의 문자가 반복적으로 적혀 있다. 각문자의 의미는 L ..

[Algorithm] 03. 그리디 : (4) 1이 될 때까지

문제 어떠한 수 N이 1이 될 때까지 다음의 두 과정 중 하나를 반복적으로 선택하여 수행하려고 한다 단, 두 번재 연산은 N이 K로 나누어떨어질 때만 선택할 수 있다 1. N에서 1을 뺀다 2. N을 K로 나눈다 N과 K가 주어질 때 N이 1이 될 때까지 1번 혹은 2번의 과정을 수행해야 하는 최소 횟수를 구하는 프로그램을 작성하시오 내 풀이 N, K = map(int, input().split(' ')) result = 0 while N != 1 : if N % K != 0 : N -= 1 result += 1 else : N // = K result += 1 print (result) 해답 n, k = map(int, input().split()) result = 0 while n >= k : whi..

[Git] TIL #3

1. 토큰 발급 2. 토큰 관리 3. 새 Repository 생성 4. 로컬과 원격 연동 git으로 관리하려는 폴더를 vs code로 연다 commit 되지 않은 변경 내역이 있다면 이를 마쳐야 한다 그리고 위에서 복사한 명령어를 터미널에 붙여넣는다 붙여 넣은 명령어 설명 git remote add origin 원격저장소주소.git 로컬 저장소와 원격저장소(github) 연결 / origin = 원격저장소명 다른 이름도 가능 git branch -M main 기본 브랜치명을 main으로 지정 git push -u origin main 현재 브랜치와 명시된 원격 브랜치 기본 연결 5. push & pull

Git 2022.07.08

[ReactJS] TIL #4

Props Props 부모 component로부터 자식 component에 데이터를 보낼 수 있게 해주는 방법 Style은 같지만 Content만 다른 버튼 두 개 만들기 동일한 style에 content만 다른 버튼 두 개를 생성하려면 style 속성을 지닌 Btn function을 하나 작성하고 화면에 각각 다른 content를 전달하는 두 개를 render하면 된다 이를 전달하는 방법은 Btn function이 의 props를 function의 () 안에 parameter로 전달하는 것이다 function Btn({propsA}){ return {propsA} } function App(){ } function Btn(hello){ return {hello.propsA} } function App(..

ReactJS/Basic 2022.07.07

[Algorithm] 03. 그리디 : (3) 숫자 카드 게임

문제 숫자 카드 게임은 여러 개의 숫자 카드 중에서 가장 높은 숫자가 쓰인 카드 한 장을 뽑는 게임이다 규칙 숫자가 쓰인 카드들이 N x M 형태로 놓여 있다. 이때 N은 행의 개수를 의미하며, M은 열의 개수를 의미한다 먼저 뽑고자 하는 카드가 포함되어 있는 행을 선택한다 그다음 선택된 행에 포함된 카드들 중 가장 숫자가 낮은 카드를 뽑아야 한다 따라서 처음에 카드를 골라낼 행을 선택할 때, 이후에 해당 행에서 가장 숫자가 낮은 카드를 뽑을 것을 고려하여 최종적으로 가장 높은 숫자의 카드를 뽑을 수 있도록 전략을 세워야 한다 입력조건 첫째 줄에 숫자 카드들이 놓인 행의 개수 N과 열의 개수 M이 공백을 기준으로 하여 각각 자연수로 주어진다 ( 1

[Git] TIL #2

Branch branch는 독립적인 작업을 진행하기 위한 다른 차원이라 말할 수 있다 기본 명령어 git branch 브랜치명 branch 생성 git branch branch 목록 확인 git switch 브랜치명 branch 이동 git switch -c 브랜치명 branch 생성과 이동 git branch -d 브랜치명 branch 삭제 git branch -m branchA branchB 브랜치명을 branchA에서 branchB로 바꿈 git log --all --decorate --oneline --graph 여러 브랜치 내역 보기 (Source Tree로 보는 게 편함) Merge & Rebase > merge branchA의 작업 내역을 하나의 commit으로 만들어 branchB에 이어 ..

Git 2022.07.07

[ReactJS] TIL #3

Modifier 함수에서 State를 바꾸는 방법 /* modifier 함수 이용하여 State 바꾸는 방법*/ const [counter, setCounter] = React.useState() // 1) 직접 값 지정 setCounter(5) // 2) 변수 직접 이용 setCounter(counter + 1); // 3) 현재 값 이용 setCounter((current) => current + 1); 시간 분 환산 앱 만들기 const root = document.getElementById("root"); function App() { const [amount, setAmount] = React.useState(0); const [flipped, setFlipped] = React.useState..

ReactJS/Basic 2022.07.06

[ReactJS] TIL #2

State state 기본적으로 데이터가 저장되는 곳을 뜻한다 ReactJS에서 업데이트되는 변수 나타내기 Vanilla JS 와의 차이 Vanilla JS 는 HTML 내의 요소가 업데이트될 때 그 요소의 부모들이 함께 업데이트되지만 React JS 는 바뀌는 요소만 업데이트 된다 React JS 에서 render을 하면 전체를 다시 생성한 후 교체할 것이라고 생각된다 그러나 render은 바뀐 부분만 새로 생성할 수 있게 한다 값을 업데이트하는 좋지 않은 방법 변수를 업데이트하였을 때 UI도 바뀌어야 하므로 rendering도 동반해야 한다 따라서 이 방법은 번거롭다 const root = document.getElementById("root"); let counter = 0; //JSX는 중괄호 {..

ReactJS/Basic 2022.07.06