์ ์ฒด ๊ธ
[ReactJS] JSX์ ์ปดํฌ๋ํธ (Component)
JSX JSX๋ JavaScript์ ๋ฌธ๋ฒ์ ํ์ฅํ React๋ง์ ๋ฌธ๋ฒ์ผ๋ก, JavaScript ๋ด์์ HTML ๋งํฌ์ ์ ์ฌ์ฉํ ์ ์๋๋ก ํ ๊ฒ์ด๋ค. ๋งํฌ์ ๊ณผ ์๋ฐ์คํฌ๋ฆฝํธ ๋ก์ง์ด ์๋ก ์ฐ๊ฒฐ๋์ด ์๋ค๊ณ ํ๋จํ์ฌ ์ด๋ฅผ ํ ๋ฒ์ ์์ฑํ ์ ์๋ ๋ฐฉ๋ฒ์ ๊ณ ๋ฏผํ ๊ฒฐ๊ณผ ์๊ฒจ๋ ๋ฌธ๋ฒ์ด๋ค. JavaScript ๋ด์์ ๋งํฌ์ ์ ์์ฑํ ์ ์๊ณ , JS ๋ก์ง๋ ํจ๊ป ์์ฑํ ์ ์๋ค. JavaScript ์ ์ ๋ฌธ๋ฒ์ ์๋๊ธฐ ๋๋ฌธ์ ๋ธ๋ผ์ฐ์ ์์ ์ด๋ฅผ ํด์ํ ์ ์๋ค. ๋ฐ๋ผ์ Babel ๋ณ์ญ๊ธฐ๋ก ์ด๋ฅผ React.createElement() ํจ์๋ก ๋ณํํ๋ ๊ณผ์ ์ด ๋ฐ๋์ ํ์ํ๋ค. JSX์ ํน์ง JSX๋ ์๋ฐ์คํฌ๋ฆฝํธ์ ๊ฐ์ด๋ค. ํน์ ํ ๋ณ์์ ์ด ๊ฐ์ ๋ด์ ์ ์๊ณ , ํจ์์ ์ธ์๋ก ์ ๋ฌํ๊ฑฐ๋ ํจ์์ ๋ฆฌํด๊ฐ์ผ๋ก ์ฌ์ฉํ ์ ์๋ค. f..
[ReactJS] React์ ํน์ง๊ณผ Virtual DOM
React์ ๋ํ์ ์ธ ํน์ง 2๊ฐ์ง ์ ์ธํ (Declarative Programming) ๋ฆฌ์ํธ๋ ์ ์ธํ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด์ด๋ค. ์ ์ฐจ์ vs ์ ์ธ์ ์ ์ฐจ์ (๋ช ๋ นํ) ํ๋ก๊ทธ๋๋ฐ ์ํ๋ ๊ฒฐ๊ณผ๋ฅผ ๋ง๋ค๊ธฐ ์ํ ์ ์ฐจ(How)์ ์ค์ ์ ๋๋ ํ๋ก๊ทธ๋๋ฐ ๋ฐฉ์ ์๋ฐ์คํฌ๋ฆฝํธ์์ ์ง์ DOM์ ์กฐ์ํ๋ ๋ฐฉ์ ๋ชจ๋ ๊ณผ์ ์ ์ผ์ผ์ด ๊ธฐ์ ํด์ผ ํ๋ฏ๋ก ์์ฐ์ฑ์ด ์ ํ๋ ์ ์๋ค. ์ ์ธ์ ํ๋ก๊ทธ๋๋ฐ ์ํ๋ ๊ฒฐ๊ณผ๊ฐ ๋ฌด์(What)์ธ์ง ์ ์ธํ๋ ํํ๋ก ํ๋ก๊ทธ๋๋ฐ ํ๋ ๋ฐฉ์ ์๋ฐ์คํฌ๋ฆฝํธ์์ DOM ์กฐ์์ React์ ์์ ์ปดํจํฐ๋ ์ ์ฐจ์ ์ผ๋ก ๋์ํ๊ธฐ์ ๊ฒฐ๊ตญ ๋ชจ๋ ๋ช ๋ น์ ๋ค ์ ์ฐจ์ ์ผ๋ก ํด์ฃผ์ด์ผ ํ์ง๋ง, ๊ฐ๋ฐ์ ํ๋ ๊ฐ๋ฐ์๋ (์ต๋ํ ์ ์ฐจ์ ์ธ ๋ถ๋ถ์ ๊ฐ์ถ๊ฐ๋ ์์ํ๊ณ ) ์ ์ธ์ ์ธ ๋ถ๋ถ์๋ง ์ง์คํ๊ฒ ํ๋ ๋ฐฉ์์ด ์ ์ธ์ ์ธ ํ๋ก๊ทธ๋๋ฐ ๋ฐฉ์์ด๋ค. ์ปดํฌ๋ํธ..
[ReactJS] React JS ์๊ฐ ๋ฐ ์ค์น
React JS์ ๊ฐ๋ ๊ณผ ํ์ ๋ฐฐ๊ฒฝ React ํ์ ๋ฐฐ๊ฒฝ ์น ์ ํ๋ฆฌ์บ์ด์ ์ด ๋ฑ์ฅํจ์ ๋ฐ๋ผ ์น ๊ฐ๋ฐ์ ๋ณต์ก์ฑ์ด ์ฆ๊ฐํ๊ฒ ๋์๋ค. ์น ์ ํ๋ฆฌ์ผ์ด์ : ์น ๋ธ๋ผ์ฐ์ ๋ฅผ ํตํด ์์ฉ ์ํํธ์จ์ด์ ๊ธฐ๋ฅ์ ์ด์ฉํ ์ ์๋๋ก ๋ง๋ ์น ์๋น์ค ์ด์ ๋ฐ๋ผ DOM์ ์ง์ ์กฐ์ํ๋ (Vanila JS, jQuery๋ฅผ ์ด์ฉํ๋) ๊ธฐ์กด์ ๊ฐ๋ฐ ๋ฐฉ๋ฒ์ผ๋ก๋ ํ๊ณ๊ฐ ์๊ฒผ๋ค. ์ด๋ฌํ ์ํฉ์์ ์์ฐ์ค๋ฝ๊ฒ ํ๋ก ํธ์๋ ๊ฐ๋ฐ์ ์์ฐ์ฑ ํฅ์๊ณผ ๋์ด๋ ํํฅ์ ์ํ ์ฌ๋ฌ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ฐ ํ๋ ์์ํฌ๊ฐ ํ์ํ์๋ค. ์ด ์ค ํ์ฌ ์ ์ผ ๋ง์ด ์ฌ์ฉ๋๋ ๊ฒ์, React, Angular, Vue์ด๋ค. React JS๋? React JS (ํน์ React)๋ UI๋ฅผ ๊ตฌ์ถํ๊ณ ์ดํ๋ฆฌ์ผ์ด์ ์ด interactiveํ๋๋ก ๋ง๋ค์ด์ฃผ๋ ํ๋ ์์ํฌ (Framework) ์ด์ ..
[NodeJS] Node JS & NPM ์๊ฐ ๋ฐ ์ค์น
Node JS๋? Node JS๋ Chrome V8 JavaScript ์์ง์ผ๋ก ๋น๋๋ JavaScript ๋ฐํ์(์คํ ํ๊ฒฝ)์ด๋ค. ์คํ ํ๊ฒฝ : ํน์ ํ๋ก๊ทธ๋จ์ ์คํํ๊ธฐ ์ํด์ ํ์ํ ํ๊ฒฝ JavaScript ์คํ ํ๊ฒฝ : JavaScript๋ฅผ ์คํํ ์ ์๋๋ก ํด์ฃผ๋ ํ๊ฒฝ (JavaScript ์์ง + ํ์ผ ์ฝ๊ณ ์ฐ๋ ๊ธฐ๋ฅ + ์ ์ถ๋ ฅ ๊ธฐ๋ฅ ๋ฑ๋ฑ) Node JS๋ (V8 ์์ง์ผ๋ก ๋น๋๋) ๋จ์ํ ๋ฌธ์์ ๋์ด์ธ JavaScript ์ฝ๋๋ฅผ ํด์ํ๊ณ ์คํํ ์ ์๋๋ก ์ ๊ณต๋ ํ๊ฒฝ์ด๋ค. Node JS ํ์ ๋ฐฐ๊ฒฝ ์น ๋ธ๋ผ์ฐ์ ๋ ๋ํ์ ์ธ JavaScript์ ์คํํ๊ฒฝ์ด๋ค. ์ ์ด์ JavaScript ์ธ์ด๋ ๋ธ๋ผ์ฐ์ ์์ ๊ฐ๋จํ ์คํฌ๋ฆฝํธ๋ฅผ ์คํํ๊ธฐ ์ํด ํ์ํ ์ธ์ด์ด๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์, JavaScript๋ ๋ธ๋ผ์ฐ์ ..
[ํ๋ก๊ทธ๋๋จธ์ค] ์น์์ด (1) (๐Lv. 0) (JavaScript)
๋ฌธ์ ๋ฐ๋ก ๊ฐ๊ธฐ ํ๋ก๊ทธ๋๋จธ์ค ์ฝ๋ ์ค์ฌ์ ๊ฐ๋ฐ์ ์ฑ์ฉ. ์คํ ๊ธฐ๋ฐ์ ํฌ์ง์ ๋งค์นญ. ํ๋ก๊ทธ๋๋จธ์ค์ ๊ฐ๋ฐ์ ๋ง์ถคํ ํ๋กํ์ ๋ฑ๋กํ๊ณ , ๋์ ๊ธฐ์ ๊ถํฉ์ด ์ ๋ง๋ ๊ธฐ์ ๋ค์ ๋งค์นญ ๋ฐ์ผ์ธ์. programmers.co.kr ํ์ด (JavaScript) ์ฌ์ฉ ์ธ์ด : JavaScript ํ์ดํ ๋ ์ง : 2022-12-20 function solution(babbling) { const correctBabbling = ["aya", "ye", "woo", "ma"]; let count = 0; babbling.forEach((item) => { let oneBabble = item; for (let i = 0; i < correctBabbling.length; i++) { if (item.includes(correc..
[๋ฐฑ์ค] 1063๋ฒ : ํน (๐ฅ์ค๋ฒ 4) (Python)
๋ฌธ์ ๋ฐ๋ก ๊ฐ๊ธฐ 1063๋ฒ: ํน 8*8ํฌ๊ธฐ์ ์ฒด์คํ์ ์์ด ํ๋ ์๋ค. ํน์ ํ์ฌ ์์น๊ฐ ์ฃผ์ด์ง๋ค. ์ฒด์คํ์์ ๋ง์ ์์น๋ ๋ค์๊ณผ ๊ฐ์ด ์ฃผ์ด์ง๋ค. ์ํ๋ฒณ ํ๋์ ์ซ์ ํ๋๋ก ์ด๋ฃจ์ด์ ธ ์๋๋ฐ, ์ํ๋ฒณ์ ์ด์ ์์งํ๊ณ , ์ซ์๋ www.acmicpc.net ํ์ด ์ฌ์ฉ ์ธ์ด : Python ํ์ดํ ๋ ์ง : 2022-03-11 place = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'] dxs = [0, 1, 1, 1, 0, -1, -1, -1] dys = [1, 1, 0, -1, -1, -1, 0, 1] king, stone, n = tuple(input().split()) n = int(n) king_x = place.index(king[0]) + 1 king_y = int(king..
[๋ฐฑ์ค] 1929๋ฒ : ์์ ๊ตฌํ๊ธฐ (๐ฅ์ค๋ฒ 3)
๋ฌธ์ ๋ฐ๋ก ๊ฐ๊ธฐ 1929๋ฒ: ์์ ๊ตฌํ๊ธฐ์ฒซ์งธ ์ค์ ์์ฐ์ M๊ณผ N์ด ๋น ์นธ์ ์ฌ์ด์ ๋๊ณ ์ฃผ์ด์ง๋ค. (1 ≤ M ≤ N ≤ 1,000,000) M์ด์ N์ดํ์ ์์๊ฐ ํ๋ ์ด์ ์๋ ์ ๋ ฅ๋ง ์ฃผ์ด์ง๋ค.www.acmicpc.net ํ์ด์ฌ์ฉ ์ธ์ด : Pythonํ์ดํ ๋ ์ง : 2022-03-11m, n = tuple(map(int, input().split()))def isPrime(a): if a == 1 : return False i = 2 while i*i ํ์ด ๋ก์งm๋ถํฐ n๊น์ง์ ์๋ฅผ for๋ฌธ์ ํตํด ํ๋์ฉ ํ์ธํ๋ฉด์ ์์์ธ์ง ํ๋ณํ๊ณ , ์์์ด๋ฉด ์ถ๋ ฅํ๋ค. ๋.์์ ํ๋ณ ๊ณผ์ ์ ํจ์๋ก ๋ฐ๋ก ๋ง๋ค์ด ๊ตฌํํ๋ค. ํ๋ณ ๊ณผ์ ์ค ๋๋จธ์ง ์ฐ์ฐ์ n์ ์ ๊ณฑ๊ทผ๊น์ง๋ง ํด๋ณด๋ฉด ๋๋ค๋ ์ . ๋ฌธ์ ์ ๊ทผ ..
[๋ฐฑ์ค] 1037๋ฒ : ์ฝ์ (๐ฅ์ค๋ฒ 5) (Python)
๋ฌธ์ ๋ฐ๋ก ๊ฐ๊ธฐ 1037๋ฒ: ์ฝ์ ์ฒซ์งธ ์ค์ N์ ์ง์ง ์ฝ์์ ๊ฐ์๊ฐ ์ฃผ์ด์ง๋ค. ์ด ๊ฐ์๋ 50๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ฐ์์ด๋ค. ๋์งธ ์ค์๋ N์ ์ง์ง ์ฝ์๊ฐ ์ฃผ์ด์ง๋ค. 1,000,000๋ณด๋ค ์๊ฑฐ๋ ๊ฐ๊ณ , 2๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ์ ์์ฐ์์ด๊ณ , ์ค๋ณต๋ www.acmicpc.net ํ์ด 1 ์ฌ์ฉ ์ธ์ด : Python ํ์ดํ ๋ ์ง : 2022-03-07 n = int(input()) lst = list(map(int, input().split())) if n == 1: print(lst[0] * lst[0]) else: print(max(lst) * min(lst)) ํ์ด ๋ก์ง ์ง์ง ์ฝ์๋ 1๊ณผ N์ด ๋ ์ ์์ผ๋ฏ๋ก, N์ 1๊ณผ ์์ ๋ง์ ์ฝ์๋ก ๊ฐ๋ ์์๊ฐ ๋ ์ ์๋ค. ์ง์ง ์ฝ์์ ๊ฐ์๊ฐ 1๊ฐ๋ฉด, ๊ทธ ๊ฐ์ ์ ๊ณฑํ๋ฉด ..
[๋ฐฑ์ค] 1292๋ฒ : ์ฝ๊ฒ ํธ๋ ๋ฌธ์ (๐ฅ์ค๋ฒ 5) (Python)
๋ฌธ์ ๋ฐ๋ก ๊ฐ๊ธฐ 1292๋ฒ: ์ฝ๊ฒ ํธ๋ ๋ฌธ์ ์ฒซ์งธ ์ค์ ๊ตฌ๊ฐ์ ์์๊ณผ ๋์ ๋ํ๋ด๋ ์ ์ A, B(1 ≤ A ≤ B ≤ 1,000)๊ฐ ์ฃผ์ด์ง๋ค. ์ฆ, ์์ด์์ A๋ฒ์งธ ์ซ์๋ถํฐ B๋ฒ์งธ ์ซ์๊น์ง ํฉ์ ๊ตฌํ๋ฉด ๋๋ค. www.acmicpc.net ํ์ด 1 ์ฌ์ฉ ์ธ์ด : Python ํ์ดํ ๋ ์ง : 2022-03-05 a, b = tuple(map(int, input().split())) cnt = 0; ans = 0 def count(): global cnt, ans for i in range(1, 1001): for j in range(1, i+1): cnt += 1 if a
[๋ฐฑ์ค] 1026๋ฒ : ๋ณด๋ฌผ (๐ฅ์ค๋ฒ 4) (Python)
๋ฌธ์ ๋ฐ๋ก ๊ฐ๊ธฐ 1026๋ฒ: ๋ณด๋ฌผ ์ฒซ์งธ ์ค์ N์ด ์ฃผ์ด์ง๋ค. ๋์งธ ์ค์๋ A์ ์๋ N๊ฐ์ ์๊ฐ ์์๋๋ก ์ฃผ์ด์ง๊ณ , ์ ์งธ ์ค์๋ B์ ์๋ ์๊ฐ ์์๋๋ก ์ฃผ์ด์ง๋ค. N์ 50๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์์ฐ์์ด๊ณ , A์ B์ ๊ฐ ์์๋ 100๋ณด๋ค ์๊ฑฐ www.acmicpc.net ํ์ด 1 ์ฌ์ฉ ์ธ์ด : Python ํ์ดํ ๋ ์ง : 2022-03-05 n = int(input()) lst_a = list(map(int, input().split())) lst_b = list(map(int, input().split())) lst_a.sort() lst_b.sort(reverse=True) ans = 0 for elem1, elem2 in zip(lst_a, lst_b): ans += elem1 * elem2 prin..