본문 바로가기

전체 글121

0. Docker 란? Docker 란? 다양한 운영체제와 시스템 환경 상에서, 서버 셋업을 위한 작업은 각각 다르고 복잡하다. 도커는 컨테이너 기반의 가상화 플랫폼으로, 컨테이너 상에 서버를 셋업해놓을 수 있다. 따라서 기반 환경이 다르더라도, 언제든 해당 컨테이너를 실행만 하면, 동일한 서버 셋업이 가능하다. Docker 설치 서버 구축은 결국 리눅스에서 진행하는 것이 일반적이므로, 리눅스 상에서 docker 사용법에 대해 집중해서 익히기로 하자. Docker 주요 구성 요소 docker Engine : 도커는 서버/ 클라이언트 구조로 이루어짐, 서버는 docker daemon process 형태로 동작함. (데몬이란, 보통 계속 실행중인 프로그램) docker image : docker 컨테이너를 생성하기 위한 명령들을 .. 2023. 8. 12.
[2023-08-06 ~ 2023-08-12] 공부 계획 월 ~ 금 부산여행 토, 일 : 도커 강의 정리하기 2023. 8. 12.
[백준 10282번] 해킹 문제 풀이 '이때 b가 a를 의존하지 않는다면, a가 감염되더라도 b는 안전하다' 라는 문구에서 방향이 있는 그래프임을 알 수 있다. 테스트 케이스의 크기만큼 반복하여, 다익스트라 알고리즘을 이용해 개수와 최대값을 구하면 감염된 컴퓨터의 개수와 모두 감염되는데 걸리는 시간을 구할 수 있다. import sys import heapq input = sys.stdin.readline INF = int(1e9) test_num = int(input()) def dijkstra(start): q = [] distance = [INF] * (n + 1) heapq.heappush(q, (0, start)) distance[start] = 0 while q: dist, no.. 2023. 8. 9.
[백준 1238번] 파티 문제 풀이 먼저 간단한 다익스트라 구조를 이용하여 가는 거리와 오는 거리를 구해 최댓값을 구했는데, 입출력은 동일하나 시간 초과가 나왔다. 그래서, 힙을 이용하여 개선된 다익스트라 알고리즘을 사용하였더니 해결되었다. import sys import heapq input = sys.stdin.readline INF = int(1e9) # 노드의 개수, 간선의 개수 입력 받기 n, m, x = map(int, input().split()) # 각 노드에 연결 되어 있는 노드에 대한 정보를 담는 리스트 만들기 graph = [[] for i in range(n +1)] # 모든 간선 정보를 입력 받기 for _ in range(m): a, b, c = map(int ,input().split()) # a번 노드에서 b번.. 2023. 8. 8.
[백준 1504번] 특정한 최단 경로 문제 이 문제는 시작 노드에서 두개의 정점을 지나 마지막 노드까지 가는 경로의 최단 경로를 구하는 것으로, 시작노드(1) -> v1 -> v2 -> 마지막 노드(n)과 시작노드(1) -> v2 -> v1 -> 마지막 노드(n) 중 더 작은 값을 출력하면 된다. import sys input = sys.stdin.readline INF = int(1e9) # 노드의 개수, 간선의 개수 입력 받기 n, m = map(int, input().split()) # 각 노드에 연결 되어 있는 노드에 대한 정보를 담는 리스트 만들기 graph = [[] for i in range( n +1)] # 모든 간선 정보를 입력 받기 for _ in range(m): a, b, c = map(int ,input().split()).. 2023. 8. 7.