Container Technology 1. 컨테이너란 최근에는 컨테이너가 등장했다. Host 로부터 격리되어 독립적인 환경의 이미지 파일로부터 실행되는 프로세스이다. namespace와 cgroup 기술을 사용한다. 원래 VM도 OS 를 이미지화해서 만들지만 컨테이너에서 말하는 이미지는 어플리케이션 이미지이다. 내가 앱을 돌릴때 필요한 라이브러리, 어플리케이션 자체를 이미지화해서 만들어놓은 것이다. 2. 컨테이너와 VM의 종류 Linux LXC : OS 내에서 작동하는 경량화된 VM 구현. Docker : Docker 출시 이후로 컨테이너가 각광받기 시작함. 개발자들이 다양한 OS에서 작동하는 동일한 개발 환경을 구현하는 것이 목적. Docker Image 란 실행에 필요한 모든 것을 포함하여 docke..
분류 전체보기
https://www.acmicpc.net/problem/14567 14567번: 선수과목 (Prerequisite) 3개의 과목이 있고, 2번 과목을 이수하기 위해서는 1번 과목을 이수해야 하고, 3번 과목을 이수하기 위해서는 2번 과목을 이수해야 한다. www.acmicpc.net 진입차수가 0 이면 queue에 넣어주고, queue에서 빼서 현재 노드 탐색하고, 현재 노드에서 인접한 노드들의 진입차수를 1씩 뺸다. 그리고 진입차수가 0이 되면 다시 queue에 넣어준다. 현재 최소 학기를 구해야 하므로 , queue에 enqueue하는게 몇번째인지 세어주는 count 도 같이 넣어준다. from collections import deque n, m = map(int, input().split()) ..
1. Graph 자료 구조 Vertice와 edge들을 가지고 구성되어있는 자료구조이다. edge들은 vertices 간의 연결된것을 의미힌다. 2. 그래프 자료구조를 처리하기 어려운 이유 Graph Data는 복잡하다. : 전통적인 ML, DL 도구들은 simple data types에 특화되어 있다. ex) 이미지 데이터는 같은 구조와 사이즈여서 fixed-size grid graph로 생각할 수 있음 , 순차적인 text or speech 데이터 그래프는 유클리드 공간에 있지 않다. 즉, 좌표계로 표현할 수 없다. 시계열 데이터, 음성, 이미지 데이터가 2차원 및 3차원 유클리드 공간에 매핑을 할 수 있는 것과 달리 그래프 데이터는 매핑하기 어렵다. 그래프는 고정된 형태가 아니다. : 가변적인 크기..
https://www.acmicpc.net/problem/13913 13913번: 숨바꼭질 4 수빈이는 동생과 숨바꼭질을 하고 있다. 수빈이는 현재 점 N(0 ≤ N ≤ 100,000)에 있고, 동생은 점 K(0 ≤ K ≤ 100,000)에 있다. 수빈이는 걷거나 순간이동을 할 수 있다. 만약, 수빈이의 위치가 X일 www.acmicpc.net 숨바꼭질 1 번문제와 문제는 같은데, 업그레이드 된 부분은 수빈이가 동생을 찾을 수 있는 가장 빠른 시간에 대한 경로를 저장해두어야 한다는 것이다. 경로 저장을 위해 note라는 배열을 생성한다. for nx in [now-1, now+1, now*2]: if 0
https://www.acmicpc.net/problem/22869 22869번: 징검다리 건너기 (small) $N$개의 돌이 일렬로 나열 되어 있다. $N$개의 돌에는 수 $A_{1} A_{2} ... A_{i} ... A_{N}$로 부여되어 있다. 가장 왼쪽에 있는 돌에서 출발하여 가장 오른쪽에 있는 돌로 건너가려고 한다. 항상 오른쪽으 www.acmicpc.net 징검다리 건너기 (large) 문제와 거의 동일하게 풀었다. 다만 마지막에 dp[-1] 칸이 값이 k보다 작거나 같은지 확인해주면 된다. import sys input = sys.stdin.readline n, k = map(int, input().split()) array = list(map(int, input().split())) I..
클라우드 컴퓨팅 모델 Could 모델은 다음과 같다. 사진은 마이크로소프트 Azure에서 제공한 사진이다. 우리가 자주 들어본 IaaS, PaaS, SaaS가 클라우드 모델의 한 종류에 속하게 된다. On Premises는 회사 및 개인이 직접 전체 시스템을 구축해서 사용하는 모델이며, 따라서 자유도가 가장 높다. 그리고 IaaS -> PaaS -> SaaS 순으로 클라우드 vendor가 제공하는 기능이 많아진다. 최근의 트렌드는 SaaS는 요금이 많이 부과되므로, IaaS , PaaS를 하이브리드로 많이 사용하려고 한다. as a Service 의 뜻 IaaS, PaaS, SaaS 단어에 붙는 as a Service는 무슨 의미이길래 계속 붙는 것일까. 여기서 '서비스'란 , IT Service를 의미..
https://www.acmicpc.net/problem/20444 20444번: 색종이와 가위 첫 줄에 정수 n, k가 주어진다. (1 ≤ n ≤ 231-1, 1 ≤ k ≤ 263-1) www.acmicpc.net i) 규칙 찾기 n=4일때 가능한 모든 경우를 보면 (col, row) = (0, 4), (1, 3), (2, 2) (3, 1), (4, 0) 이다 근데 column , row 구분을 안해줘도 되는 이유가, 만들어지는 색종이의 개수만 확인하면 되기 때문이다. -> 즉 0 부터 n//2 까지의 경우만 확인해주면 시간을 줄일 수 있다. 만들어 지는 색종이의 개수는 (col+1) * (row+1) 이다. 또한 찾을 수 있는 규칙은, column 개수와 row의 개수 차이가 클수록 만들어지는 색종이..
https://www.acmicpc.net/problem/20164 20164번: 홀수 홀릭 호석 호석이는 짝수랑 홀수 중에서 이니셜이 같은 홀수를 더 좋아한다. 운전을 하던 호석이는 앞차의 번호판이 홀수로 가득할 때 사랑스러움을 느낄 정도이다. 전화번호도 홀수만 있고 싶다. 그렇게 www.acmicpc.net 구현문제이다 또한 별 다른 알고리즘 없이, 세자리 이상인 경우에도 가능한 숫자 조합을 이중 for문으로 모두 만들어 주고 다시 호출했다 그렇지만...!! 내가 놓친부분은 바로 새로운 숫자 조합을 만들 때에도 홀수의 개수를 세는 것이다 ... def check_odd(n): # 1. 각 자리 숫자 중 홀수의 개수를 적는다. temp = 0 for i in n: if int(i) % 2 == 1: t..