๋ชฉ๋ก๋ถ๋ฅ ์ ์ฒด๋ณด๊ธฐ (115)
let's get IT with DAVINA ๐ป
Greedy Algorithm (ํ์ ์๊ณ ๋ฆฌ์ฆ) ์ ํ์ ์๊ฐ๋ง๋ค ๋น์ฅ ๋์์ ๋ณด์ด๋ ์ต์ ์ ์ํฉ๋ง์ ์ซ์ ์ต์ข ์ ์ธ ํด๋ต์ ๋๋ฌํ๋ ๋ฐฉ๋ฒ Greedy Algorithm ๋ฌธ์ ํด๊ฒฐ ๋จ๊ณ ๐ฝ ์ ํ ์ ์ฐจ(Selection Procedure): ํ์ฌ ์ํ์์์ ์ต์ ์ ํด๋ต์ ์ ํํฉ๋๋ค. ์ ์ ์ฑ ๊ฒ์ฌ(Feasibility Check): ์ ํ๋ ํด๊ฐ ๋ฌธ์ ์ ์กฐ๊ฑด์ ๋ง์กฑํ๋์ง ๊ฒ์ฌํฉ๋๋ค. ํด๋ต ๊ฒ์ฌ(Solution Check): ์๋์ ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์๋์ง ๊ฒ์ฌํ๊ณ , ํด๊ฒฐ๋์ง ์์๋ค๋ฉด ์ ํ ์ ์ฐจ๋ก ๋์๊ฐ ์์ ๊ณผ์ ์ ๋ฐ๋ณตํฉ๋๋ค. - ํ์์ ์ ํ ์์ฑ(Greedy Choice Property) : ์์ ์ ํ์ด ์ดํ์ ์ ํ์ ์ํฅ์ ์ฃผ์ง ์์ต๋๋ค. - ์ต์ ๋ถ๋ถ ๊ตฌ์กฐ(Optimal Substructure) : ๋ฌธ์ ์ ๋ํ ..
โ ๋ฌธ์ ์ค๋ช ์ ์ n์ด ์ฃผ์ด์ง ๋, n ์ดํ์ ์ง์๋ฅผ ๋ชจ๋ ๋ํ ๊ฐ์ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด์ฃผ์ธ์. ๐ซ ์ ํ์ฌํญ 0
โ ๋ฌธ์ ์ค๋ช ์ฒซ ๋ฒ์งธ ๋ถ์์ ๋ถ์์ ๋ถ๋ชจ๋ฅผ ๋ปํ๋ numer1, denom1, ๋ ๋ฒ์งธ ๋ถ์์ ๋ถ์์ ๋ถ๋ชจ๋ฅผ ๋ปํ๋ numer2, denom2๊ฐ ๋งค๊ฐ๋ณ์๋ก ์ฃผ์ด์ง๋๋ค. ๋ ๋ถ์๋ฅผ ๋ํ ๊ฐ์ ๊ธฐ์ฝ ๋ถ์๋ก ๋ํ๋์ ๋ ๋ถ์์ ๋ถ๋ชจ๋ฅผ ์์๋๋ก ๋ด์ ๋ฐฐ์ด์ return ํ๋๋ก solution ํจ์๋ฅผ ์์ฑํด๋ณด์ธ์. ๐ซ ์ ํ ์ฌํญ 0 0) { R = a % b; //๋๋จธ์ง a = b; b = R; } return b; }โ
๋น๋'s ์ฝ์ง ์ผ์ง Local์์ ์์ ํ๋ project๋ฅผ Remote Github์ ์ฐ๊ฒฐํ๊ณ ์ถ์ ๋, ์๋์ ๊ฐ์ด SSH์ฃผ์๋ก ์ฐ๊ฒฐ์ ํ๋๋ git push๊ฐ ๊ณ์ํด์ ์คํจํ๋ค.. git remote add origin git@github.com:davina708/todo-vin.git git branch -M main git push -u origin main โญ๏ธ ํด๊ฒฐ ๋ฐฉ๋ฒ git remote remove origin git@github.com:davina708/todo-vin.git //์ฐ๊ฒฐ ๋ remote ์ ๊ฑฐ git remote add origin https://github.com/davina708/todo-vin.git //๊นํ https์ ์ฃผ์ ์ ๋ ฅ git remote -v // remo..
1. Local์ ์๋ project๋ฅผ ์๊ฒฉ์ ์ฌ๋ฆฌ์ New Repo ์์ฑํด์ฃผ๊ณ local์์ remoteํ๊ฒฝ์ผ๋ก pushํด์ฃผ๊ธฐ git remote add origin https://github.com/davina708/todo-vin.git git branch -M main git push -u origin main 2. React ํ๋ก์ ํธ์ gh-pages ์ค์นํ๊ธฐ Github Pages๋ React ํ๋ก์ ํธ๋ฅผ ์ฝ๊ฒ ๋ฐฐํฌํ ์ ์๋๋ก gh-pages ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ ๊ณตํ๋ค. npm install gh-pages --save-dev 3. package.json ์ค์ ํ๊ธฐ "homepage": "https://๊นํ๋ธID.github.io/๋ ํฌ์งํ ๋ฆฌ์ด๋ฆ/", "scripts": { "start": "react..
1. TypeScript ์ ์ฉ (1) ์๋ก์ด ํ๋ก์ ํธ๋ฅผ TypeScript๋ก ์์ฑํ๊ธฐ npx create-react-app ํ๋ก์ ํธ์ด๋ฆ --template typescript (2) ๊ธฐ์กด React์ TypeScript ์ ์ฉํ๊ธฐ #npm npm install typescript @types/node @types/react @types/react-dom @types/jest #yarn yarn add typescript @types/node @types/react @types/react-dom @types/jest 2. TypeScript ์ค์ tsc ๋ช ๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ tsconfig.json์ ์์ฑํ๋ค. tsc --init ์ํ๋ ์ต์ ์ ์ถ๊ฐํ์ฌ tsconfig.json ์ ์ค์ ํ๋ค. { "compile..
1. ๋จผ์ , ํด๋น ๊ธ์ ๋๋ฅด๋ฉด ⊕๋ฒํผ ๋๋ ์ ๋ ๋จ๋ ์ฐฝ์ด ๋์ค๊ฒ ํด์ผ๊ฒ ์ง?! TodoItem.js ํน์ ๊ธ์ ๋๋ฅด๋๊น ์ฌ๊ธฐ์({text}์๋ ๋ถ๋ถ=๊ธ์ ๋๋ ์๋) onClickํจ์ ์ถ๊ฐํด์ค! import React from "react"; import { MdCheckBox, MdCheckBoxOutlineBlank } from "react-icons/md"; import "./TodoItem.css"; const TodoItem = ({ todo, onCheckToggle, onInsertToggle, onChangeSelectedTodo, }) => { const { id, text, checked } = todo; return ( {checked ? ( { onCheckToggle(id); }} ..
CSS ์์ ํ, CRUD์ ์ฒซ๋ฒ ์งธ ๊ธฐ๋ฅ์ธ Create ๊ธฐ๋ฅ ๊ตฌํ์ ๋ค์ด๊ฐ๋ค. ⊕ ๋ฒํผ์ ๋๋ฌ ์ฌ์ฉ์๊ฐ ์ ๋ ฅํ ํญ๋ชฉ์ ์ถ๊ฐํ๋ ๊ธฐ๋ฅ! TodoInsert.js ๋ฐฐ๊ฒฝ์ ๋ด๋นํด์ฃผ๋ background div์ form์ ํ๋ ๋ฃ์ด์ฃผ๊ธฐ (์ฌ์ฉ์๊ฐ ์ ๋ ฅํ๋ input + ์ ์ถํ๋ button ์์) ์ด๊ฑธ ์ฌ์ฉ์๊ฐ ⊕๋ฒํผ์ ๋๋ฅผ๋๋ง ๋ชจ๋ฌ์ ๋์ฐ๊ณ ์ถ์์์? App.js import React, { useState } from "react"; import { MdAddCircle } from "react-icons/md"; import "./App.css"; import Template from "./components/Template"; import TodoInsert from "./components/Tod..