๐All Posts
ํ๋ก๊ทธ๋๋จธ์ค: ํ๋ ฌ์ ๋ง์
ํ๋ก๊ทธ๋๋จธ์ค: ํ๋ ฌ์ ๋ง์
2020.06.18์ฝ๋ฉํ
์คํธ ์ฐ์ต - ํ๋ ฌ์ ๋ง์
ํ๋ ฌ์ ๋ง์
์ ํ๊ณผ ์ด์ ํฌ๊ธฐ๊ฐ ๊ฐ์ ๋ ํ๋ ฌ์ ๊ฐ์ ํ, ๊ฐ์ ์ด์ ๊ฐ์ ์๋ก ๋ํ ๊ฒฐ๊ณผ๊ฐ ๋ฉ๋๋ค. 2๊ฐ์ ํ๋ ฌ arr1๊ณผ arr2๋ฅผ ์
๋ ฅ๋ฐ์, ํ๋ ฌ ๋ง์
์ ๊ฒฐ๊ณผ๋ฅผ ๋ฐํํ๋ ํจ์, solution์ ์์ฑํด์ฃผ์ธ์ programmers.co.kr ๋ฌธ์ ํ๋ ฌ์ ๋ง์
์ ํ๊ณผ ์ด์ ํฌ๊ธฐ๊ฐ ๊ฐ์ ๋ ํ๋ ฌ์ ๊ฐ์ ํ, ๊ฐ์ ์ด์ ๊ฐ์ ์๋ก ๋ํ ๊ฒฐ๊ณผ๊ฐ ๋ฉ๋๋ค. 2๊ฐ์ ํ๋ ฌ arr1๊ณผ arr2๋ฅผ ์
๋ ฅ๋ฐ์, ํ๋ ฌ ๋ง์
์ ๊ฒฐ๊ณผ๋ฅผ ๋ฐํํ๋ ํจ์, solution์ ์์ฑํด์ฃผ์ธ์. ์ ํ ์กฐ๊ฑด ํ๋ ฌ arr1, arr2์ ํ๊ณผ ์ด์ ๊ธธ์ด๋ 500์ ๋์ง ์์ต๋๋ค. ์
์ถ๋ ฅ arr1 arr2 return [[1,2],[2,3] [[3,4],[5,6]] [[4,6],[7,9]] [[1],[2]] [[3..
ํ๋ก๊ทธ๋๋จธ์ค: x๋งํผ ๊ฐ๊ฒฉ์ด ์๋ n๊ฐ์ ์ซ์
ํ๋ก๊ทธ๋๋จธ์ค: x๋งํผ ๊ฐ๊ฒฉ์ด ์๋ n๊ฐ์ ์ซ์
2020.06.18์ฝ๋ฉํ
์คํธ ์ฐ์ต - x๋งํผ ๊ฐ๊ฒฉ์ด ์๋ n๊ฐ์ ์ซ์ ํจ์ solution์ ์ ์ x์ ์์ฐ์ n์ ์
๋ ฅ ๋ฐ์, x๋ถํฐ ์์ํด x์ฉ ์ฆ๊ฐํ๋ ์ซ์๋ฅผ n๊ฐ ์ง๋๋ ๋ฆฌ์คํธ๋ฅผ ๋ฆฌํดํด์ผ ํฉ๋๋ค. ๋ค์ ์ ํ ์กฐ๊ฑด์ ๋ณด๊ณ , ์กฐ๊ฑด์ ๋ง์กฑํ๋ ํจ์, solution์ ์์ฑํด์ฃผ์ธ์. ๏ฟฝ๏ฟฝ programmers.co.kr ๋ฌธ์ ํจ์ solution์ ์ ์ x์ ์์ฐ์ n์ ์
๋ ฅ ๋ฐ์, x๋ถํฐ ์์ํด x์ฉ ์ฆ๊ฐํ๋ ์ซ์๋ฅผ n๊ฐ ์ง๋๋ ๋ฆฌ์คํธ๋ฅผ ๋ฆฌํดํด์ผ ํฉ๋๋ค. ๋ค์ ์ ํ ์กฐ๊ฑด์ ๋ณด๊ณ , ์กฐ๊ฑด์ ๋ง์กฑํ๋ ํจ์, solution์ ์์ฑํด์ฃผ์ธ์. ์ ํ ์กฐ๊ฑด x๋ -10000000 ์ด์, 10000000 ์ดํ์ธ ์ ์์
๋๋ค. n์ 1000 ์ดํ์ธ ์์ฐ์์
๋๋ค. ์
์ถ๋ ฅ x n answer 2 5 [2,4,6,8,10] 4 3 [4,8,1..
ํ๋ก๊ทธ๋๋จธ์ค: ์ง์ฌ๊ฐํ ๋ณ์ฐ๊ธฐ
ํ๋ก๊ทธ๋๋จธ์ค: ์ง์ฌ๊ฐํ ๋ณ์ฐ๊ธฐ
2020.06.18์ฝ๋ฉํ
์คํธ ์ฐ์ต - ์ง์ฌ๊ฐํ ๋ณ์ฐ๊ธฐ ์ด ๋ฌธ์ ์๋ ํ์ค ์
๋ ฅ์ผ๋ก ๋ ๊ฐ์ ์ ์ n๊ณผ m์ด ์ฃผ์ด์ง๋๋ค. ๋ณ(*) ๋ฌธ์๋ฅผ ์ด์ฉํด ๊ฐ๋ก์ ๊ธธ์ด๊ฐ n, ์ธ๋ก์ ๊ธธ์ด๊ฐ m์ธ ์ง์ฌ๊ฐํ ํํ๋ฅผ ์ถ๋ ฅํด๋ณด์ธ์. ์ ํ ์กฐ๊ฑด n๊ณผ m์ ๊ฐ๊ฐ 1000 ์ดํ์ธ ์์ฐ์๏ฟฝ programmers.co.kr ๊ธฐ๋ณธ์ผ๋ก ์ฃผ์ด์ง๋ ์ฝ๋ a, b = map(int, input().strip().split(' ')) print(a + b) ๋ด๊ฐ ์์ฑํ ์ฝ๋ a, b = map(int, input().strip().split(' ')) for i in range(b): for j in range(a): print('*', end='') print() ์
๋ ฅ๋ ๋ ์ a, b ํฌ๊ธฐ์ ์ง์ฌ๊ฐํ์ *๋ก ์ฑ์์ ์ถ๋ ฅํ๋ฉด ๋๋ค.
์ฑ
์ ์๋ค
์ฑ ์ ์๋ค
2020.05.04์ฑ
์ฌ๋๋ฐ ๋ ์๋ผ๋ ๊ฒ ์๋๋ผ๊ณ ํ๋ค. ๊ทธ๋์ ์ฑ
์ ์๊ณ , ํฉ๊ธ์ฐํด๊ฐ ๋๋ ์ค๋ ์์นจ์ ์ผ์ด๋๋ ๋ฌธ ์์ผ๋ก ๋ฐฐ์ก๋์ด ์์๋ค. IT์ฑ
์ ์ ๋ฐ์ ์ผ๋ก ๋ค๋ฅธ ๋ถ์ผ์ ๋นํด ๋น์ธ์ ๋ง๊ป ์ด ์๊ฐ ์๋ค. ๊ทธ๋์ ๊ฐ๊ธ์ ์ด๋ฉด ํ๊ต ๋์๊ด์ ์ด์ฉํ๋ ํธ์ธ๋ฐ ์ฝ๋ก๋ ์ดํ๋ก ํ๊ต๋ฅผ ๊ฐ์ง ๋ชปํ๊ณ ์์ด์ ๊ตฌ๋งคํ๋ค. ๋ด๊ฐ ๊ตฌ๋งคํ ์ฑ
์ค์ ๋ ๊ถ์ ํ๊ต ๋์๊ด์ ํฌ๋ง๋์๋ก ์ ์ฒญํด๋จ์๋๋ฐ, ๊ฒฐ๊ตญ ๊ฐ์ง ๋ชปํ๋ ์์ฉ์ด ์๋ค๐ฅ 1. ์คํ๋ง ๋ถํธ์ AWS๋ก ํผ์ ๊ตฌํํ๋ ์น ์๋น์ค ์ด๋์ฑ๋์ด ์ฐ์ ์ฑ
. ์ถ๊ฐ ์์์ ๊ทธ ๋ถ์ ๋ธ๋ก๊ทธ๋ก ์ ํ์ ๋๋ถํฐ ์ด๊น๋ง๊น ๊ณ ๋ฏผํ๊ณ ์์๋ ์ฑ
์ด์๋ค. ๊ทธ๋ฌ๋ค ๋ง์นจ ์ ๋ฒ์ฃผ์ ์์ ์ ๊ฐ๋ค๊ฐ ๋ฏธ๋ฆฌ ์ฝ์ด๋ณด๊ณ ๊ตฌ์
์ ๊ฒฐ์ ํ๋ค. ์ฑ
์ด ์ ๋ง ์ฌ๋ฐ๊ฒ ์ฐ์ฌ์ ์์ ์๋ฆฌ์์ ๋ฐ์ ์ ํ๋ฃจ๋ฃฉ ์ฝ์๋ค. ์ด๋ฒ์ ์ฑ
์ ์ฌ๊ฒ ๋ ์ฃผ๋ฒ์ด๋ ท..
์น ๊ฐ๋ฐ์ ์ดํด ์ ๋ฆฌ
์น ๊ฐ๋ฐ์ ์ดํด ์ ๋ฆฌ
2020.04.30์ด ๊ธ์ [๋ถ์คํธ์ฝ์ค] ์น ํ๋ก๊ทธ๋๋ฐ ๊ณผ์ ์ 1. ์น ํ๋ก๊ทธ๋๋ฐ ๊ธฐ์ด - 1. Web๊ฐ๋ฐ์ ์ดํด - FE/BE ์์ 1~3 ๊น์ง์ ๋ด์ฉ์ ์ ๋ฆฌํ ๊ธ์
๋๋ค. 1) ์น ํ๋ก๊ทธ๋๋ฐ์ ์ํ ํ๋ก๊ทธ๋จ ์ธ์ด๋ค ์ ๊ธ ์ธ์ด ๊ธฐ๊ณ ์ค์ฌ์ ์ธ์ด ์ ๊ธฐ์ ํธ์ธ ์ผ์ก๋ค(on)์ ๊บผ์ก๋ค(off) 2๊ฐ์ง ์ํ ๊ฐ์ผ๋ก ๋์ ์ซ์๋ก ํํํ๋ฉด ์ผ์ก๋ค๋ 1, ๊บผ์ก๋ค๋ 0์ ์๋ฏธ 0๊ณผ 1๋ก ํํ๋๋ ์ซ์๋ฅผ 2์ง์๋ผ๊ณ ํจ 2์ง์๋ก ์ด๋ค์ง ๊ฐ์ผ๋ก ์์ฑํ๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด : ๊ธฐ๊ณ์ฌ(Machine Language) ์ซ์๋ก๋ง ๋ ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ ์ ์ง๋ณด์/์ฌ์ฉ์ด ์ด๋ ค์ ์ซ์๋ก ๋ ๋ฌธ์ฅ๊ณผ 1:1๋ก ๋์ํ๋ ๊ธฐํธ๋ฅผ ๋ง๋ค๊ณ , ๊ทธ ๊ธฐํธ๋ก ํ๋ก๊ทธ๋๋ฐ ๊ธฐํธ๋ก ์์ฑ๋ ํ๋ก๊ทธ๋จ์ ๊ธฐ๊ณ๊ฐ ์ ์ ์๊ธฐ ๋๋ฌธ์ ๊ธฐํธ๋ก ์์ฑ๋ ๋ฌธ์ฅ๋ค์ ์๋์ ์ซ์๋ก ๋ฐ๊ฟ์ผ ํ๋ ๊ณผ์ ์ด..
์ ์ญ๋ณ์๋ ์ ๋ฐ๋ณต๋ฌธ์ด ๋๋๋ฉด ์ด๊ธฐํ ๋ ๊น?
์ ์ญ๋ณ์๋ ์ ๋ฐ๋ณต๋ฌธ์ด ๋๋๋ฉด ์ด๊ธฐํ ๋ ๊น?
2020.04.27@Log4j public class Main { public static ArrayList items = new ArrayList(); public static ArrayList itemNo = new ArrayList(); public static void main(String[] args) { Service service = new Service(); service.getNo(); for (int i: itemNo) { service.getDetail(i); log.info(items.size()); } log.info(items.size()); } } public class Service { public void getNo() { // ... ์๋ต ... for (int i : no) { Main...
๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ(Object-Oriented Programming)
๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ(Object-Oriented Programming)
2020.04.20๊ฐ์ฒด์งํฅ ๊ธฐ๋ฒ์ ๊ฐ์ ํ์ค ์ธ๊ณ์ ๊ฐ์ฒดEntity๋ฅผ ํ๋์ ๊ฐ์ฒดObject๋ก ๋ง๋ค์ด, ๊ฐ์ฒด๋ค์ ์กฐ๋ฆฝํด์ ์์ฑํ ์ ์๋๋ก ํ๋ ๊ธฐ๋ฒ ์ํํธ์จ์ด์ ์ฌ์ฌ์ฉ ์์ฐ์ฑ ํฅ์ ์ ์ง๋ณด์ ์ฉ์ด ๊ฐ์ฒด์งํฅ ํ๋ก๊ทธ๋๋ฐ์ ํน์ง ์์Inheritance ์ด๋ฏธ ์ ์๋ ํด๋์ค(๋ถ๋ชจ ํด๋์ค)์ ๋ชจ๋ ์์ฑ๊ณผ ์ฐ์ฐ์ ์๋ก์ด ํด๋์ค๊ฐ ๋ฌผ๋ ค๋ฐ๋ ๊ฒ. ์ด ๋ ์์ฑ๊ณผ ์ฐ์ฐ์ ๋ฌผ๋ ค๋ฐ์ ์๋ก์ด ํด๋์ค๋ฅผ ํ์ ํด๋์ค, ์์ ํด๋์ค๋ผ๊ณ ํจ. ์บก์ํEncapsulation ๊ฐ์ฒด์ ์์ฑ๊ณผ ํ์๋ฅผ ํ๋๋ก ๋ฌถ๋๋ค. ์ค์ ๊ตฌํ ๋ด์ฉ ์ผ๋ถ๋ฅผ ์ธ๋ถ์ ๊ฐ์ถ์ด ์๋ํ๋ค. ๋คํ์ฑPolymorphism ๋ฉ์๋ ์ค๋ฒ๋ผ์ด๋ฉMethod Overriding ๋ถ๋ชจํด๋์ค๊ฐ ๊ฐ์ง๊ณ ์๋(์์ ๋ฐ์) ๋ฉ์๋๋ฅผ ์์ ํด๋์ค์์ ์ฌ์ ์ํ๋ ๊ฒ. ๋ฉ์๋ ์ค๋ฒ๋ก๋ฉMethod Overload..
ํ๋ก๊ทธ๋๋จธ์ค: K๋ฒ์งธ ์
ํ๋ก๊ทธ๋๋จธ์ค: K๋ฒ์งธ ์
2020.04.20https://programmers.co.kr/learn/courses/30/lessons/4274 2019๋
์ด ํ์ด ๋๋ณด๊ธฐ ๋ด๊ฐ ํผ ๋ฐฉ๋ฒ์ด ํจ์จ์ ์ด๋ผ๊ณ ํ ์๋ ์๊ฒ ์ง๋ง, ์ด๋ ๊ฒ ํธ๋ ์ฌ๋๋ ์๋ค ์ ๋๋ก ์ฐธ๊ณ ๋ง ํ๋ฉด ์ข๊ฒ ๋ค. ๋๋ ์ฐ์ฐ(๋ฐฐ์ด์ ์๋ฅธ ํ ์ ๋ ฌ, n๋ฒ์งธ ์ ์ฐพ๊ธฐ)์ ์ํด์ ArrayList๋ฅผ ์ฌ์ฉํ๋ค. ์ด ๋ ArrayList ๋์ Vector ํน์ ์ผ๋ฐ ๋ฐฐ์ด์ ์ฌ์ฉํด๋ ์๊ด์๋ค. import java.util.ArrayList; import java.util.Collections; class Solution { public int[] solution(int[] array, int[][] commands) { int[] answer = new int[commands.length]; Arr..
์๋ฃ๊ตฌ์กฐ: ์ฌ๊ท ์๊ณ ๋ฆฌ์ฆ(Recursive Algorithms) ๊ธฐ์ด, ์์ฉ
์๋ฃ๊ตฌ์กฐ: ์ฌ๊ท ์๊ณ ๋ฆฌ์ฆ(Recursive Algorithms) ๊ธฐ์ด, ์์ฉ
2020.04.20์ฌ๊ท ์๊ณ ๋ฆฌ์ฆ(Recursive algorithms) - ๊ธฐ์ด ์ฌ๊ท ํจ์๋? ํ๋์ ํจ์์์ ์์ ์ ๋ค์ ํธ์ถํ์ฌ ์์
์ ์ํ ๋ง์ ์ข
๋ฅ์ ๋ฌธ์ ๊ฐ ์ฌ๊ท์ ์ผ๋ก ํด๊ฒฐ ๊ฐ๋ฅ ์ด์ง ํธ๋ฆฌ(Binary trees) ์์ฐ์์ ํฉ ๊ตฌํ๊ธฐ ์ข
๊ฒฐ ์กฐ๊ฑด(trivial case)์ด ๋งค์ฐ ์ค์ํจ ์ฌ๊ท ์๊ณ ๋ฆฌ์ฆ์ ํจ์จ ์๊ณ ๋ฆฌ์ฆ์ ๋ณต์ก๋ ์ธก๋ฉด๊ณผ ํจ์จ์ฑ ์ธก๋ฉด ํผ๋ณด๋์น ์์ด ํผ๋ณด๋์น ์์ด ์ฌ๊ท์ ๋ฐฉ๋ฒ def fibonacci(x): if x == 0: return 0 elif x == 1: return 1 else: return fibonacci(x-1) + fibonacci(x-2) ๋ฌธ์ ์ค๋ช
์์ ํผ๋ณด๋์น ์์ด์ ๋ํ ์ ์๊ฐ ์ฃผ์ด์ก๊ณ , ์ฌ๋ฌ ๋ฒ ์์ฑํด๋ณธ ์ ์ด ์๋ ์ฝ๋๋ผ์ ์์ฑํ๋ ๋ฐ ํฐ ์ด๋ ค์์ ๋๋ผ์ง ์์๋ค. ๊ทธ๋๋ ์ฌ๋ฌ ๋ฒ์ ..
Flask๋ฅผ ์ด์ฉํ์ฌ ์ธ๋ถ์์ DC๋ชจํฐ ์ ์ดํ๊ธฐ with Android
Flask๋ฅผ ์ด์ฉํ์ฌ ์ธ๋ถ์์ DC๋ชจํฐ ์ ์ดํ๊ธฐ with Android
2020.04.20๐ก ์ด๊ธฐ ์ค์ (OS ์ค์น, ์ค์ ๋ฑ)์ ๋์ด ์๋ค๋ ๊ฐ์ ํ์ ์์ฑํ์์ต๋๋ค. ์ค๋น๋ฌผ ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด3 B+ DC๋ชจํฐ (ํน์ ๊ธฐํ ์ผ์ ๋ฑ) Android Studio (์ ํ) ํ
์คํธ ๊ธฐ๊ธฐ Flask ์ค์น pi@raspberrypi:~ $ sudo pip install flask ์์
๋๋ ํ ๋ฆฌ ์์ฑ pi@raspberrypi:~ $ mkdir workspace pi@raspberrypi:~ $ cd workspace ๋ชจํฐ ์ ์ด ์ฝ๋ ์์ฑ vi ๋ช
๋ น์ด๋ฅผ ํตํด ํ์ผ ์์ฑ. ํ์ผ ์ด๋ฆ์ ์ ๋นํ ์ง์ด๋ ๋ฌด๊ดํจ. pi@raspberrypi:~/workspace $ vi motor.py motor.py # -*- coding: utf-8 -*- # ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด GPIO ํจํค์ง import RPi.GPIO as GPIO..
CCTV ๋ง๋ค๊ธฐ with Android
CCTV ๋ง๋ค๊ธฐ with Android
2020.04.20๐ก ์ด๊ธฐ ์ค์ (OS ์ค์น, ์ค์ ๋ฑ)์ ๋์ด ์๋ค๋ ๊ฐ์ ํ์ ์์ฑํ์์ต๋๋ค. ์ค๋น๋ฌผ ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด3 B+ ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด ํธํ ์นด๋ฉ๋ผ ๋ชจ๋ (5MP ์ฌ์ฉ) Android Studio (์ ํ) ํ
์คํธ ๊ธฐ๊ธฐ ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด ์นด๋ฉ๋ผ ์ค์ pi@raspberrypi:~ $ sudo raspi-config 5 Interfacing Options ์ ํ P1 Camera > enable ๋ก ์ค์ ํ๋ค๋ฉด ๋ผ์ฆ๋ฒ ๋ฆฌํ์ด๋ฅผ ์ฌ๋ถํ
ํ๋ค. pi@raspberrypi:~ $ sudo reboot ์๋ ๋ช
๋ น์ด๋ฅผ ํตํด ์นด๋ฉ๋ผ ์ฐ๊ฒฐ์ด ์ ๋๋ก ๋์ด์๋ ์ง ํ์ธํ ์ ์๋ค. pi@raspberrypi:~ $ vcgencmd get_camera # ์นด๋ฉ๋ผ ์ฐ๊ฒฐ ๋ถ๋ supported=1 detected=0 # ์นด๋ฉ๋ผ ์ฐ๊ฒฐ ์ฑ๊ณต supported=1..
๊ธ๋ก ๋จ๊ธด๋ค๋ ๊ฒ
๊ธ๋ก ๋จ๊ธด๋ค๋ ๊ฒ
2020.04.20์ด ๊ธ์ ๋ณดํธ๋์ด ์๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ๋ณด๋ ค๋ฉด ์ํธ๊ฐ ํ์ํฉ๋๋ค.