Python
BOJ: ์ฐ๊ฒฐ ์์์ ๊ฐ์ - 1475๋ฒ
BOJ: ์ฐ๊ฒฐ ์์์ ๊ฐ์ - 1475๋ฒ
2020.12.0511724๋ฒ: ์ฐ๊ฒฐ ์์์ ๊ฐ์ ์ฒซ์งธ ์ค์ ์ ์ ์ ๊ฐ์ N๊ณผ ๊ฐ์ ์ ๊ฐ์ M์ด ์ฃผ์ด์ง๋ค. (1 ≤ N ≤ 1,000, 0 ≤ M ≤ N×(N-1)/2) ๋์งธ ์ค๋ถํฐ M๊ฐ์ ์ค์ ๊ฐ์ ์ ์ ๋์ u์ v๊ฐ ์ฃผ์ด์ง๋ค. (1 ≤ u, v ≤ N, u ≠ v) ๊ฐ์ ๊ฐ์ ์ ํ ๋ฒ๋ง ์ฃผ www.acmicpc.net ๋ฌธ์ ๋ฐฉํฅ ์๋ ๊ทธ๋ํ๊ฐ ์ฃผ์ด์ก์ ๋, ์ฐ๊ฒฐ ์์ (Connected Component)์ ๊ฐ์๋ฅผ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ๋ด๊ฐ ์์ฑํ ์ฝ๋ # https://www.acmicpc.net/problem/11724 # ์ฐ๊ฒฐ ์์์ ๊ฐ์ import sys def bfs(start_v): discovered = [start_v] queue = [start_v] while queue: x = queue..
TIL: 2020-09-20(์ผ)
TIL: 2020-09-20(์ผ)
2020.09.20์ด ๊ธ์ ๋ณดํธ๋์ด ์๊ธฐ ๋๋ฌธ์ ์ด๊ฒ์ ๋ณด๋ ค๋ฉด ์ํธ๊ฐ ํ์ํฉ๋๋ค.
ํ๋ก๊ทธ๋๋จธ์ค: ์ฒด์ก๋ณต
ํ๋ก๊ทธ๋๋จธ์ค: ์ฒด์ก๋ณต
2020.07.03์ฝ๋ฉํ
์คํธ ์ฐ์ต - ์ฒด์ก๋ณต ์ ์ฌ์๊ฐ์ ๋๋์ด ๋ค์ด, ์ผ๋ถ ํ์์ด ์ฒด์ก๋ณต์ ๋๋๋นํ์ต๋๋ค. ๋คํํ ์ฌ๋ฒ ์ฒด์ก๋ณต์ด ์๋ ํ์์ด ์ด๋ค์๊ฒ ์ฒด์ก๋ณต์ ๋น๋ ค์ฃผ๋ ค ํฉ๋๋ค. ํ์๋ค์ ๋ฒํธ๋ ์ฒด๊ฒฉ ์์ผ๋ก ๋งค๊ฒจ์ ธ ์์ด, ๋ฐ๋ก ์๋ฒ๏ฟฝ programmers.co.kr ๋ฌธ์ ์ ์ฌ์๊ฐ์ ๋๋์ด ๋ค์ด, ์ผ๋ถ ํ์์ด ์ฒด์ก๋ณต์ ๋๋๋นํ์ต๋๋ค. ๋คํํ ์ฌ๋ฒ ์ฒด์ก๋ณต์ด ์๋ ํ์์ด ์ด๋ค์๊ฒ ์ฒด์ก๋ณต์ ๋น๋ ค์ฃผ๋ ค ํฉ๋๋ค. ํ์๋ค์ ๋ฒํธ๋ ์ฒด๊ฒฉ ์์ผ๋ก ๋งค๊ฒจ์ ธ ์์ด, ๋ฐ๋ก ์๋ฒํธ์ ํ์์ด๋ ๋ฐ๋ก ๋ท๋ฒํธ์ ํ์์๊ฒ๋ง ์ฒด์ก๋ณต์ ๋น๋ ค์ค ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, 4๋ฒ ํ์์ 3๋ฒ ํ์์ด๋ 5๋ฒ ํ์์๊ฒ๋ง ์ฒด์ก๋ณต์ ๋น๋ ค์ค ์ ์์ต๋๋ค. ์ฒด์ก๋ณต์ด ์์ผ๋ฉด ์์
์ ๋ค์ ์ ์๊ธฐ ๋๋ฌธ์ ์ฒด์ก๋ณต์ ์ ์ ํ ๋น๋ ค ์ต๋ํ ๋ง์ ํ์์ด ์ฒด์ก์์
์ ๋ค์ด์ผ ํฉ๋๋ค. ์ ์ฒด ํ..
ํ๋ก๊ทธ๋๋จธ์ค: ์ ์ผ ์์ ์ ์ ๊ฑฐํ๊ธฐ
ํ๋ก๊ทธ๋๋จธ์ค: ์ ์ผ ์์ ์ ์ ๊ฑฐํ๊ธฐ
2020.06.18์ฝ๋ฉํ
์คํธ ์ฐ์ต - ์ ์ผ ์์ ์ ์ ๊ฑฐํ๊ธฐ ์ ์๋ฅผ ์ ์ฅํ ๋ฐฐ์ด, arr ์์ ๊ฐ์ฅ ์์ ์๋ฅผ ์ ๊ฑฐํ ๋ฐฐ์ด์ ๋ฆฌํดํ๋ ํจ์, solution์ ์์ฑํด์ฃผ์ธ์. ๋จ, ๋ฆฌํดํ๋ ค๋ ๋ฐฐ์ด์ด ๋น ๋ฐฐ์ด์ธ ๊ฒฝ์ฐ์ ๋ฐฐ์ด์ -1์ ์ฑ์ ๋ฆฌํดํ์ธ์. ์๋ฅผ๋ค์ด arr์ด [4,3,2,1 programmers.co.kr ๋ฌธ์ ์ ์๋ฅผ ์ ์ฅํ ๋ฐฐ์ด, arr ์์ ๊ฐ์ฅ ์์ ์๋ฅผ ์ ๊ฑฐํ ๋ฐฐ์ด์ ๋ฆฌํดํ๋ ํจ์, solution์ ์์ฑํด์ฃผ์ธ์. ๋จ, ๋ฆฌํดํ๋ ค๋ ๋ฐฐ์ด์ด ๋น ๋ฐฐ์ด์ธ ๊ฒฝ์ฐ์ ๋ฐฐ์ด์ -1์ ์ฑ์ ๋ฆฌํดํ์ธ์. ์๋ฅผ๋ค์ด arr์ด [4,3,2,1]์ธ ๊ฒฝ์ฐ๋ [4,3,2]๋ฅผ ๋ฆฌํด ํ๊ณ , [10]๋ฉด [-1]์ ๋ฆฌํด ํฉ๋๋ค. ์ ํ ์กฐ๊ฑด arr์ ๊ธธ์ด 1 ์ด์์ธ ๋ฐฐ์ด์
๋๋ค. ์ธ๋ฑ์ค i, j์ ๋ํด i ≠ j์ด๋ฉด arr[i] ≠ arr[j] ์
..
ํ๋ก๊ทธ๋๋จธ์ค: ํ๋ ฌ์ ๋ง์
ํ๋ก๊ทธ๋๋จธ์ค: ํ๋ ฌ์ ๋ง์
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 ํฌ๊ธฐ์ ์ง์ฌ๊ฐํ์ *๋ก ์ฑ์์ ์ถ๋ ฅํ๋ฉด ๋๋ค.
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..
AI: ๋ชจ๋์ ๋ฅ๋ฌ๋ ๊ฐ์ 2ํ
AI: ๋ชจ๋์ ๋ฅ๋ฌ๋ ๊ฐ์ 2ํ
2020.04.04https://www.gilbut.co.kr/book/view?bookcode=BN002682 ๋ชจ๋์ ๋ฅ๋ฌ๋ ๊ฐ์ 2ํ ์์ฐ์ด ์ฒ๋ฆฌ, GAN, ์คํ ์ธ์ฝ๋, ์ ์ด ํ์ต ๋ฑ์ผ๋ก ๋๋ง์ ๋ชจ๋ธ์ ๋ง๋ ๋ค with ํ
์ํ๋ก2.0 & ์ผ๋ผ์ค www.gilbut.co.kr ํ์ต์ ํ์ํ ์์ ์์ค: https://github.com/gilbutITbook/080228 ์ฑ
์ ๋ด์ฉ๊ณผ ๋ณ๊ฐ๋ก ๊ธธ๋ฒ์์ ๋์ค๋ ๋ชจ๋์ ์๋ฆฌ์ฆ๋ ํ์ง๋ฅผ ์ ๋ง๋ ๊ฑฐ ๊ฐ๋ค. ์๊ธฐ์๊ธฐํ ์ผ๋ฌ์คํธ๋ฅผ ๋ฃ์ด์ ์ด๋ฑํ๊ต ํ์ต์ง ๊ฐ์ ๋๋์ด ๋ ๋ค. ๋์๋ค๋๊ฒ ์๋๋ผ ๊ทธ๋งํผ ์
๋ฌธ์๋ก ๊ฐ๋ณ๊ฒ ์ฝ๊ธฐ ์ข์๋ณด์ธ๋ค๋ ๋ป์ด๋ค. ์ฑ
์ ์ ๋ถ ์ปฌ๋ฌ๋ก ์ธ์๋์ด ์๋ค. ์ดํด๋ฅผ ๋๊ธฐ ์ํ ์ฝํ๋ถํฐ ์ค์น ๊ณผ์ ์ด๋ฏธ์ง ์ฌ์ง์ด ์ฝ๋๊น์ง๋ ์ปฌ๋ฌ! ๊ฐ์ธ์ ์ผ๋ก ์ฑ
์ ์์ด ๋ค์ด๊ฐ๋ฉด ๋ ๋ฑ๋ฑํด๋ณด์ฌ..
ํ๊ต ๊ณต์ง์ฌํญ ๋ด ๊ฐ๋ฐ๊ธฐ
ํ๊ต ๊ณต์ง์ฌํญ ๋ด ๊ฐ๋ฐ๊ธฐ
2020.02.06๋ณตํ์ด ํ ๋ฌ ๋จ์ง ๋จ์์ ๋์๋ค. ์ฌ์ฌ ํ๊ต๋ก ๋์๊ฐ ์ค๋น๋ฅผ ํ๋ค๋ณด๋ ํ๊ต ํํ์ด์ง๋ฅผ ๊ณ์ ๋ค์ด๊ฐ์ผ ํ๋ค. ์๊ฐ์ ์ฒญ ์ผ์ ์ด๋ฉฐ, ์ฅํ๊ธ ์ ์ฒญ ๊ธฐ๊ฐ ๋ฑ์ ๊ณต์ง์ฌํญ์ ๋ณด๋ ค๋ฉด ์ด์ฉ ์ ์์๋ค. ์ด ๊ณผ์ ์ด ์๊ฐ๋ณด๋ค ๊ท์ฐฎ์๋ค. (๊ณต์ง์ฌํญ์ด ์ธ์ ์ฌ๋ผ์ฌ์ง ๋ชจ๋ฅด๋) ๊ทธ๋์ ๊ณต์ง์ฌํญ์ด ์ฌ๋ผ์ค๋ฉด ์๋ ค์ฃผ๋ ๋ด์ ๋ง๋ค๊ธฐ๋ก ํ๋ค. ์ด ๊ธ์ ๊ธฐ์ด๋ก ๋ง๋ค์๋ค. ์ข์ ์๋ฃ ๊ฐ์ฌํฉ๋๋ค๐ โ์๊ฐํ๊ธฐ ์ฒ์์ ์์ฃผ ๋จ์ํ๊ฒ ์๊ฐํ๋ค. ์ฐ๋ฆฌ ํ๊ต ํํ์ด์ง๋ ๋ฉ์ธ์์ ์์ ฏ์ผ๋ก ๋๋ต ์ด ๊ฐ ๋จ์ง์ ๊ณต์ง์ฌํญ์ ์๋ ค์ค๋ค. ์ด๊ฑธ ํฌ๋กค๋งํ๋ฉด ๋์ง ์์๊น? ๊ทธ๋์ ์ฒ์ ๋ง๋ค ๋๋ ๋ฉ์ธ์ ์๋ ์์ ฏ์ ํฌ๋กค๋งํ๋ค. ๋ค ๋ง๋ค๊ณ ๋๋ ๋ฌธ์ ์ ๋ด์ฐฉํ๋ค. ์์ ฏ์ ์ผ์ชฝ ์๋จ์ ๊ฒ์ํ ์ด๋ฆ์ด ์ถ๋ ฅ๋๋ ํํ์๋๋ฐ ์ค์ ๊ฒ์ํ ์ด๋ฆ๊ณผ ๋งค์นํ์ง ์์๋ค…. (๋ฒ๊ทธ๋ผ๊ณ ์๊ฐ..
Python: is์ ==
Python: is์ ==
2020.02.05โ ์ด์ง ํธ๋ฆฌ์ ๋์ด ์ฐ์ ์ํ(breadth first traversal)์ ๊ตฌํํ๋ ๋์ค ๋งํ๋ค. ๋ญ๊ฐ ์๋ชป๋ ๊ฑธ๊น? ๋ฌธ์ ๊ฐ ์ผ์ด๋ฌ๋ ์ฝ๋ ๋ถ๋ถ์ด๋ค. if self.root is None: return traversal ๋๋ self.root๊ฐ null์ธ์ง ์ฒดํฌํ๊ณ ์ถ์๋ค. ๐ก is์ ==์ ์ฐจ์ด is์ ==์ ์ฉ๋์ ๋ง์ง ์๊ฒ ์ฌ์ฉํ๊ณ ์๋ ๊ฒ ๋ฌธ์ ์๋ค. is๋ ์ค๋ธ์ ํธ(=๊ฐ์ฒด)๋ฅผ ๋น๊ตํ ๋ ์ฌ์ฉํด์ผ ํ๊ณ , ==๋ ๊ฐ(value)๋ฅผ ๋น๊ตํ ๋ ์ฌ์ฉ๋์ด์ผ ํ๋ค. ์ด ๊ธ์ด ๋งค์ฐ ๋์ ๋์๋ค. ๊ทธ๋ฌ๋๊น ๋ด ๊ฒฝ์ฐ์๋ self.root์ ๊ฐ์ด null์ธ์ง ์ฒดํฌํด์ผ ํ๊ธฐ ๋๋ฌธ์ is๋ณด๋ค๋ ==๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ๋ ์ ํฉํ ๊ฒ์ด์๋ค. if self.root == None: return traversal