전체 글

Data Engineering과 Cloud Native 기술에 대해 Dive Deep 하는 만능 플랫폼 엔지니어가 되는 것을 목표로 하고 있습니다. 경험했던 내용과 공부했던 내용을 기록합니다. 🐻‍❄️☁️
·Algorithm (PS)
https://school.programmers.co.kr/learn/courses/30/lessons/67257 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 연산자의 우선순위를 정하는 것을 순열 라이브러리로 구해 모든 경우를 확인해주는 brute force방법으로 풀었다. 계산할 때는 연산자 우선순위대로 순회한다. 해당 연산자를 계산하는 순서가 되었을 때, 연산을 한다. expression 에서 해당 연산자가 아니라면 피연산자 취급을 해서 스택에 쌓는다. x + y 라고 할 때 먼저 오는 x 에 해당하는 피연산자는 stack에 쌓인 것 중 맨 위에 있..
·Algorithm (PS)
https://www.acmicpc.net/problem/15666 15666번: N과 M (12) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net 삼성 코딩테스트에서는 collections 라이브러리를 못쓰게 한다는 소식을 듣고 ~ n과 m을 풀어보았읍니다.. 비내림차순으로 순열을 구하는 알고리즘입니다 중복된 값을 출력하는 것을 방지하기 위해, 처음에 입력받는 숫자들을 set()으로 묶어서 중복된 숫자를 빼줍니다 import sys input = sys.stdin.readline n, m = map(int, input().split())..
1. Ethernet LAN 의 약자는 Local Area Network 이다. 그리고 LAN의 종류중 하나가 Ethernet 이다. Ethernet의 frame 구조는 다음과 같다. Link Layer 계층에서의 데이터프레임의 명칭이 frame이다. preamble destination address source address type data - IP protocol CRC - error checking frame 은 header와 데이터로 이루어져 있으며, 이 데이터에는 ip packet의 내용이 담겨져 있다. Ethernet이 사용하는 MAC protocol 은 CSMA/CD이다. Link Layer가 하는 일 중 하나가 link 에 access 하는 것이다. 여기서 link 란 네트워크 토폴로지..
·Algorithm (PS)
https://www.acmicpc.net/problem/17779 17779번: 게리맨더링 2 재현시의 시장 구재현은 지난 몇 년간 게리맨더링을 통해서 자신의 당에게 유리하게 선거구를 획정했다. 견제할 권력이 없어진 구재현은 권력을 매우 부당하게 행사했고, 심지어는 시의 이름 www.acmicpc.net 어렵다고 생각한 구현문제이다 삼성 기출문제이다 풀이방법 1 .경계선 표시하기 : 경계선에 5 라고 저장하기 2. 구역 1, 구역2, 구역 3, 구역 4의 각각 구역마다의 총인원수를 구해준 후에 구역 5는 (전체 인구수) - (구역1+구역2+구역3+구역4) 3. max값과 min값의 차이가 최소값이 되는 경우로 갱신해주기 인데 구현을 디테일하게 해주어야 한다.. 1) 예시는 맞았으나 히든케이스에서 틀린 ..
·Algorithm (PS)
https://www.acmicpc.net/problem/1654 1654번: 랜선 자르기 첫째 줄에는 오영식이 이미 가지고 있는 랜선의 개수 K, 그리고 필요한 랜선의 개수 N이 입력된다. K는 1이상 10,000이하의 정수이고, N은 1이상 1,000,000이하의 정수이다. 그리고 항상 K ≦ N 이다. 그 www.acmicpc.net k, n = map(int, input().split()) lines = [] for i in range(k): lines.append(int(input())) start = 1 end = max(lines) while start 랜선 길이를 늘려도 된다 start = mid+1 print(end)
·Algorithm (PS)
https://www.acmicpc.net/problem/2805 2805번: 나무 자르기 첫째 줄에 나무의 수 N과 상근이가 집으로 가져가려고 하는 나무의 길이 M이 주어진다. (1 ≤ N ≤ 1,000,000, 1 ≤ M ≤ 2,000,000,000) 둘째 줄에는 나무의 높이가 주어진다. 나무의 높이의 합은 항상 M보 www.acmicpc.net 이진탐색으로 높이 H 값을 빠르게 찾는 문제이다. 백준 1654번 랜선자르기와 풀이방법이 유사하다 ~ https://www.acmicpc.net/problem/1654 1654번: 랜선 자르기 첫째 줄에는 오영식이 이미 가지고 있는 랜선의 개수 K, 그리고 필요한 랜선의 개수 N이 입력된다. K는 1이상 10,000이하의 정수이고, N은 1이상 1,000,0..
·Algorithm (PS)
https://www.acmicpc.net/problem/20364 20364번: 부동산 다툼 첫 번째 줄에 땅 개수 N과 꽉꽉나라에 사는 오리 수 Q가 공백으로 구분되어 주어진다. (2 ≤ N 0: if node in visited: answer = node # 역순으로 방문하므로 가장 최신의 node가 처음 만나는 node가 된다. node //= 2 if answer == 0: # 이미 차지한 땅을 방문하지 않은 경우 visited.add(x) print(answer) for i in range(q): x = int(input().rstrip()) traverse(x)
알아두면 편한 grep 명령어!! grep 은 하나 이상의 파일에서 문자 패턴을 검색할 때 사용한다. 그리고 패턴을 검색한 결과를 쉘 화면에 출력한다. grep option pattern filename 과 같은 형식으로 쓴다. grep linux ccc ccc 라는 file에서 linux 라는 패턴을 검색하는 명령어이다. 결과는 다음과 같이 화면에 출력해준다. grep -v pattern filename 패턴을 제외하고 검색한다. grep -c pattern filename 검색 패턴과 매칭되는 줄 개수를 출력한다. grep -w pattern filename 단어 단위로 검색한다. grep 명령어에서 정규표현식 메타문자도 활용할 수 잇다. ^ : 줄의 시작 지정 root@user-Aspire-E5-5..
minjiwoo
MJ workspace