전체 글

Data Engineering과 Cloud Native 기술에 대해 Dive Deep 하는 플랫폼 엔지니어가 되는 것을 목표로 하고 있습니다. 경험과 공부한 내용을 기록하며 지속가능한 엔지니어가 되는 것이 꿈입니다.
1. IP주소 개념 IP 주소란 네트워크 계층에서 사용하는 논리적 주소이다. 네트워크에 접속되어 있는 각 컴퓨터에 고유한 주소를 부여한 것이 IP address 이다. IP 주소 체계의 종류에는 IPv4 와 IPv6가 있다. IPv4는 32bit, IPv6는 128bit의 길이를 가지고 있다. 현재 사용하는 주소 체계는 IPv4이며, IPv4는 8bit 크기의 필드 네개를 사용하여 총 32bit로 구성된다. 2진수로 표현했을 때 00000000.00000000.00000000.00000000 ~ 11111111.11111111.11111111.11111111 이 된다. 이를 10진수로 표현하면 0.0.0.0 ~ 255.255.255.255 가 된다. IP주소는 네트워크 주소 (net id) + 호스트 주..
1. 계층화를 하는 이유 통신 기능의 확장을 쉽게 하기 위해서 프로토콜을 7개의 계층으로 나누었다. 계층구조는 상위 계층이 하위계층에게 서비스를 요청하면 하위 계층은 서비스를 실행하고 그 결과를 상위 계층에게 통보하는 개념이다. 2. OSI (Open System Interconnection) 모델 통신 기능을 7계층으로 분류하여 각 계층마다 프로토콜을 규정한 규격 1계층 - 물리계층 두 시스템 간에 데이터를 전송하기 위해서 링크를 활성화하고 관리하는 전기적, 기계적, 절차적, 기능적 특성을 정의함. 데이터를 전기 신호로, 전기신호를 데이터로 바꾼다. -> 상위 계층에서 전송된 데이터를 물리 매체를 통해 다른 시스템에 전기적 신호로 전송한다. -> 송신측의 물리계층은 데이터 링크 계층에서 0과 1로 구성..
·Algorithm (PS)
https://www.acmicpc.net/problem/20115 20115번: 에너지 드링크 페인은 에너지 드링크를 좋아하는 회사원이다. 에너지 드링크는 카페인, 아르기닌, 타우린, 나이아신 등의 성분이 들어있어 피로 회복에 도움을 주는 에너지 보충 음료수이다. 야근을 마치고 한 www.acmicpc.net 요상하게 요즘 그리디 문제를 많이 푸는 느낌? 문제에서 주어진 수식에 따르면 Xa + (Xb/2) 또는 Xb + (Xa/2) 두가지 선택을 할 수가 있다. 최대값을 구하는 것이므로, 더하는 값에 더 큰수가 오게하고, 2로 나누는 값에 작은 수가 오게 하면 greedy하게 풀 수 있다. # 에너지드링크 n = int(input()) array = list(map(int, input().split()..
·Algorithm (PS)
https://www.acmicpc.net/problem/17615 17615번: 볼 모으기 첫 번째 줄에는 볼의 총 개수 N이 주어진다. (1 ≤ N ≤ 500,000) 다음 줄에는 볼의 색깔을 나타내는 문자 R(빨간색 볼) 또는 B(파란색 볼)가 공백 없이 주어진다. 문자열에는 R 또는 B 중 한 종류만 주 www.acmicpc.net 1) 15% 맞았습니다 달성.. ㅠㅠ import sys input = sys.stdin.readline n = int(input()) array = input() answer = 0 r_move = 0 b_move = 0 r_end = 0 b_end = 0 # 맨 오른쪽의 알파벳 개수 카운트 for i in range(n-1, -1, -1): if array[i] =..
·Algorithm (PS)
https://www.acmicpc.net/problem/17471 17471번: 게리맨더링 선거구를 [1, 4], [2, 3, 5, 6]으로 나누면 각 선거구의 인구는 9, 8이 된다. 인구 차이는 1이고, 이 값보다 더 작은 값으로 선거구를 나눌 수는 없다. www.acmicpc.net 0) 그래프 입력 받기 : 파이썬의 defaultdict이라는 훌륭한 내장 라이브러리가 있는데, 이걸 활용하면 쉽다. 그리고 문제에서 1부터 카운트하므로 -1 처리를 해주어서, 0부터 노드가 시작하게끔 처리해주었다. 이래야 나중에 index값으로 접근하기 용이하므로.. graph = defaultdict(list) for i in range(n): data = list(map(int, input().split())) ..
·Algorithm (PS)
https://www.acmicpc.net/problem/17406 17406번: 배열 돌리기 4 크기가 N×M 크기인 배열 A가 있을때, 배열 A의 값은 각 행에 있는 모든 수의 합 중 최솟값을 의미한다. 배열 A가 아래와 같은 경우 1행의 합은 6, 2행의 합은 4, 3행의 합은 15이다. 따라서, 배열 A의 www.acmicpc.net from itertools import permutations import copy import sys input = sys.stdin.readline n, m, k = map(int, input().split()) array = [] for i in range(n): array.append(list(map(int, input().split()))) # 배열 돌리기 ..
https://www.acmicpc.net/problem/17281 17281번: ⚾ ⚾는 9명으로 이루어진 두 팀이 공격과 수비를 번갈아 하는 게임이다. 하나의 이닝은 공격과 수비로 이루어져 있고, 총 N이닝 동안 게임을 진행해야 한다. 한 이닝에 3아웃이 발생하면 이닝이 종 www.acmicpc.net 1. 선수 조합 : permutations 내장 라이브러리로 모든 경우의 수를 구하고 brute force로 확인한다. 2. 점수계산 : 야구의 규칙이해가 바탕이 되어야 했다.. 그래서 어려웠다 ㅎㅎ ㅜㅜ 안타 -> 타자는 1루, 1루에 있던 선수는 2루, 2루에 있던 선수는 3루, 3루에 있던 선수는 홈으로 score += three 2루타 -> 타자는 2루로 진출, 1루에 있던 선수는 3루, 2루에..
1월 ~ 3월 인턴십 지원 준비 - ICT 실리콘밸리 인턴십을 꼭 붙어서 실리콘밸리를 경험해보고 싶다 ! 는 목표가 있어서 코딩테스트 준비를 했고, 포트폴리오를 다듬었다. - 백준을 매일 풀었다 (코딩테스트) - 미국 현지 인턴십에 합격했다 3월 ~ 8월 Enuma에서 인턴십을 수행했다. 인턴십은 9시 ~ 2시 버클리 오피스 근무, 이후 저녁시간대 7~8시부터 리모트로 한국 엔지니어팀과 근무하는 형태로 진행되었다. 가보고 싶었던 LA, NYC, Las Vegas, SF, San Deigo 등 여행도 많이 다녔다. 6개월있었던 것 치고는 굉장히 여행을 많이 다녔다. 그리고 뉴욕은 혼자서 4박 5일 여행을 했다. 어릴때부터 정말 가보고싶다고 생각해왔던 MoMA를 가볼 수 있어서 정말 꿈같았다 미국 취업에 대..
minjiwoo
minji's engineering note