분류 전체보기
0. [이과가 이해한 Color 에 대해서] 목차
최근에 RGB , HSV 등 용어를 접하게 되면서 도대체 뭐가 무엇인지 호기심이 생겨 근본적인 질문을 하게 되었다. 어렸을 때 미술학원에 다녔을 때 빛의 삼원색이라든가... 빛의 세가지 요소라는 명도,채도,책상등을 배우긴 했지만 정확하게 이해한다는 느낌은 없었는데 그래도 도대체 무엇인지 각잡고 알아보기로 했다. (알아보면서 겸사겸사 정리할겸 이 Serise를 쓴다.) 다음과 같은 순서로 소개 할 예정이다. 분야는 생물학에서 수학으로 변화하게 될것이다. 목차 시각세포와 빛 색상,채도,명도 먼셀의 10 색상환 색좌표계 RGB , HSV 일단은 이정도로 생각 중이다. 이 글꾸러미들의 목표는 현재 색을 표현하는 여러 방법들의 이해 이다. 다음글 카테고리 https://dizzy-theme.tistory.com/..
[백준-4963] 섬의 개수 - Python
문제 소개 사용한 알고리즘 더보기 DFS 모든 점에서 DFS를 시작하고 육지일 경우 연속된 육지는 탐색 할때마다 바다 처리를 해준다 Code import sys import collections #sys.stdin = open("input.txt", "r") input = sys.stdin.readline sys.setrecursionlimit(10000) def DFS(x0, y0): Arr[x0][y0] = 0 mx = [0, 0, 1, -1, 1, -1, 1, -1] my = [1, -1, 0, 0, 1, -1, -1, 1] for k in range(8): newx = mx[k] + x0 newy = my[k] + y0 if 0
[백준-9205] 맥주 마시면서 걸어가기 - Python
문제 소개 문제 송도에 사는 상근이와 친구들은 송도에서 열리는 펜타포트 락 페스티벌에 가려고 한다. 올해는 맥주를 마시면서 걸어가기로 했다. 출발은 상근이네 집에서 하고, 맥주 한 박스를 들고 출발한다. 맥주 한 박스에는 맥주가 20개 들어있다. 목이 마르면 안되기 때문에 50미터에 한 병씩 마시려고 한다. 즉, 50미터를 가려면 그 직전에 맥주 한 병을 마셔야 한다. 상근이의 집에서 페스티벌이 열리는 곳은 매우 먼 거리이다. 따라서, 맥주를 더 구매해야 할 수도 있다. 미리 인터넷으로 조사를 해보니 다행히도 맥주를 파는 편의점이 있다. 편의점에 들렸을 때, 빈 병은 버리고 새 맥주 병을 살 수 있다. 하지만, 박스에 들어있는 맥주는 20병을 넘을 수 없다. 편의점을 나선 직후에도 50미터를 가기 전에 ..
[백준-2468] 안전 영역 - Python
문제 소개 문제 재난방재청에서는 많은 비가 내리는 장마철에 대비해서 다음과 같은 일을 계획하고 있다. 먼저 어떤 지역의 높이 정보를 파악한다. 그 다음에 그 지역에 많은 비가 내렸을 때 물에 잠기지 않는 안전한 영역이 최대로 몇 개가 만들어 지는 지를 조사하려고 한다. 이때, 문제를 간단하게 하기 위하여, 장마철에 내리는 비의 양에 따라 일정한 높이 이하의 모든 지점은 물에 잠긴다고 가정한다. 어떤 지역의 높이 정보는 행과 열의 크기가 각각 N인 2차원 배열 형태로 주어지며 배열의 각 원소는 해당 지점의 높이를 표시하는 자연수이다. 예를 들어, 다음은 N=5인 지역의 높이 정보이다. 사용한 알고리즘 더보기 BFS or DFS Code BFS Code # Python code ################..
[백준-2644] 촌수계산 - Python
목차 문제 소개 우리 나라는 가족 혹은 친척들 사이의 관계를 촌수라는 단위로 표현하는 독특한 문화를 가지고 있다. 이러한 촌수는 다음과 같은 방식으로 계산된다. 기본적으로 부모와 자식 사이를 1촌으로 정의하고 이로부터 사람들 간의 촌수를 계산한다. 예를 들면 나와 아버지, 아버지와 할아버지는 각각 1촌으로 나와 할아버지는 2촌이 되고, 아버지 형제들과 할아버지는 1촌, 나와 아버지 형제들과는 3촌이 된다. 여러 사람들에 대한 부모 자식들 간의 관계가 주어졌을 때, 주어진 두 사람의 촌수를 계산하는 프로그램을 작성하시오. 사용한 알고리즘 더보기 더보기 더보기 BFS 구상 Queue를 사용한 BFS 알고리즘을 사용하면 된다. Code 소개 # Python code import sys import collec..
[백준-1260] DFS와 BFS - Python
문제 : [백준-1260] DFS와 BFS - Python 출처 : 백준 문제 그래프를 DFS로 탐색한 결과와 BFS로 탐색한 결과를 출력하는 프로그램을 작성하시오. 단, 방문할 수 있는 정점이 여러 개인 경우에는 정점 번호가 작은 것을 먼저 방문하고, 더 이상 방문할 수 있는 점이 없는 경우 종료한다. 정점 번호는 1번부터 N번까지이다. 사용한 알고리즘 더보기 DFS BFS Python Code ############################################################################# # 1260 ############################################################################# import sys ..
[백준-11724] 연결 요소의 개수 - Python
문제 소개 문제 방향 없는 그래프가 주어졌을 때, 연결 요소 (Connected Component)의 개수를 구하는 프로그램을 작성하시오. 사용한 알고리즘 더보기 더보기 DFS Code import sys import collections sys.setrecursionlimit(10000) #sys.stdin = open("input.txt", "r") input=sys.stdin.readline N,M = map(int , input().split(" ")) graph = collections.defaultdict(list) for _ in range(M): a,b = map(int , input().split(" ")) graph[a].append(b) graph[b].append(a) list0 =..
[백준-2583] 영역 구하기 - Python
문제 소개 https://www.acmicpc.net/problem/2583 2583번: 영역 구하기 첫째 줄에 M과 N, 그리고 K가 빈칸을 사이에 두고 차례로 주어진다. M, N, K는 모두 100 이하의 자연수이다. 둘째 줄부터 K개의 줄에는 한 줄에 하나씩 직사각형의 왼쪽 아래 꼭짓점의 x, y좌표값과 오 www.acmicpc.net 사용한 알고리즘 더보기 BFS Code import sys import collections #sys.stdin = open("input.txt", "r") input=sys.stdin.readline M , N , K = map(int,input().split(" ")) Arr =[] for i in range(M): Arr.append([0]*N) rect = [..
라즈베리파이 구매에서부터 초기 설치
아두이노로 열심히 하다가 도저히 스펙?이 부족하여 기본 OS를 제공하고 있는 라즈베리파이를 이용하기로 결심했다. 물론 아두이노를 아예 버린건 아니지만 당분간은 라즈베리 파이를 파야 겠다 라고 생각했다. 즈베리 파이4를 주문하고 일주일이 걸린다고 했는데 무려 2일만에 택배로 도착했다. (라즈베리파이4B 베이직 키트 4GB 143000원에 주문했다) 이 단계에서부터 강조하고 싶은게 있는데 주문할때 보니 라즈베리파이용 전용 LCD(화면)도 같이 주문하는 세트가 있었다. 나는 빨리 받고 싶은 마음에 키트만 있으면 빨리 올것같아서 LCD가 없는 것을 주문 했는데. LCD전용 화면까지 같이 있는 것을 사는 것을 추천한다. 특히 남는 HDMI가 가능한 모니터가 없거나 처음사는 사람(나같은)이면 추천이 아닌 필수라고 ..
[리트코트-78] Subsets - Python
문제 소개 nums = [ 1 , 2 , 3 ] 이라는 집합의 모든 부분 집합을 리턴하라 출력 [ [],[1],[2],[3],[1,2],[2,3],[1,3],[1,2,3] ] 사용한 알고리즘 더보기 Path를 입력값으로 가지고가는 DFS Code nums=[1,2,3] result = [] def DFS(indx,path): result.append(path) for i in range(indx,len(nums)): DFS(i+1,path+[nums[i]]) DFS(0,[]) result ## 아래는 특별히 길이가 2개인 순열을 찾는 DFS이다 Path를 사용한 방식은 비슷하다. result = [] def DFS1(n_len,path): if len(path)==n_len: result.append(p..
[백준-4485] 녹색 옷 입은 애가 젤다지? - Python
문제 소개 문제 젤다의 전설 게임에서 화폐의 단위는 루피(rupee)다. 그런데 간혹 '도둑루피'라 불리는 검정색 루피도 존재하는데, 이걸 획득하면 오히려 소지한 루피가 감소하게 된다! 젤다의 전설 시리즈의 주인공, 링크는 지금 도둑루피만 가득한 N x N 크기의 동굴의 제일 왼쪽 위에 있다. [0][0]번 칸이기도 하다. 왜 이런 곳에 들어왔냐고 묻는다면 밖에서 사람들이 자꾸 "젤다의 전설에 나오는 녹색 애가 젤다지?"라고 물어봤기 때문이다. 링크가 녹색 옷을 입은 주인공이고 젤다는 그냥 잡혀있는 공주인데, 게임 타이틀에 젤다가 나와있다고 자꾸 사람들이 이렇게 착각하니까 정신병에 걸릴 위기에 놓인 것이다. 하여튼 젤다...아니 링크는 이 동굴의 반대편 출구, 제일 오른쪽 아래 칸인 [N-1][N-1]까..
[백준-1238] 파티 - Python
문제 소개 문제 N개의 숫자로 구분된 각각의 마을에 한 명의 학생이 살고 있다. 어느 날 이 N명의 학생이 X (1 ≤ X ≤ N)번 마을에 모여서 파티를 벌이기로 했다. 이 마을 사이에는 총 M개의 단방향 도로들이 있고 i번째 길을 지나는데 Ti(1 ≤ Ti ≤ 100)의 시간을 소비한다. 각각의 학생들은 파티에 참석하기 위해 걸어가서 다시 그들의 마을로 돌아와야 한다. 하지만 이 학생들은 워낙 게을러서 최단 시간에 오고 가기를 원한다. 이 도로들은 단방향이기 때문에 아마 그들이 오고 가는 길이 다를지도 모른다. N명의 학생들 중 오고 가는데 가장 많은 시간을 소비하는 학생은 누구일지 구하여라. 사용한 알고리즘 더보기 다익스트라 알고리즘 적용 크게 다른건 없고 Graph가 단방향이라는것이 유의 해야하고..