일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- 너비우선탐색
- 해시
- 비지도학습
- BOJ
- 캐싱
- 파이썬 알고리즘
- 오버라이딩
- 강화학습
- 백준
- 코테
- 스택과 힙
- Merge sort
- 딕셔너리
- HTTP
- 파이썬
- 코딩테스트
- 프로그래머스
- 지도학습
- post
- 알고리즘
- rest api
- 파이썬 오류
- 코딩
- 머신러닝
- 깊이우선탐색
- 자바
- bineary search
- 이진탐색
- 멱등
- 딥러닝
- Today
- Total
목록분류 전체보기 (85)
chae._.chae
https://www.acmicpc.net/problem/2178 2178번: 미로 탐색 첫째 줄에 두 정수 N, M(2 ≤ N, M ≤ 100)이 주어진다. 다음 N개의 줄에는 M개의 정수로 미로가 주어진다. 각각의 수들은 붙어서 입력으로 주어진다. www.acmicpc.net # 2178 미로 탐색 import sys from collections import deque input = sys.stdin.readline N, M = map(int, input().split()) matrix = [] for _ in range(N): matrix.append(list(map(int, input().rstrip()))) dx = [-1, 1, 0, 0] dy = [0, 0, 1, -1] # 너비우선탐색 d..
https://www.acmicpc.net/problem/2110 2110번: 공유기 설치 첫째 줄에 집의 개수 N (2 ≤ N ≤ 200,000)과 공유기의 개수 C (2 ≤ C ≤ N)이 하나 이상의 빈 칸을 사이에 두고 주어진다. 둘째 줄부터 N개의 줄에는 집의 좌표를 나타내는 xi (0 ≤ xi ≤ 1,000,000,000)가 www.acmicpc.net import sys input = sys.stdin.readline N, C = map(int, input().split()) position = [int(input()) for _ in range(N)] position.sort() # 가장 인접한 공유기 사이의 최대 거리 구하기 # 집 사이의 최소/최대 거리 start, end = 1, pos..
https://www.acmicpc.net/problem/1541 1541번: 잃어버린 괄호 첫째 줄에 식이 주어진다. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으로 이루어져 있고, 가장 처음과 마지막 문자는 숫자이다. 그리고 연속해서 두 개 이상의 연산자가 나타나지 않고, 5자리보다 www.acmicpc.net 숫자와 +, -로 구성된 식을 입력받아 적절한 위치에 괄호를 삽입해 최솟값을 만드는 문제이다. 🔎풀이 방법 1. 먼저 - 를 기준으로 식을 나눠준다. 입력된 식이 55-50+40+30-20+10+30라면, -를 기준으로 ['55', '50+40+30', '20+10+30'] 으로 식을 split()해준다. 2. +로 연결된 숫자를 계산해준다. [55, 120, 60]으로 + 기호를 계산해준다..
https://www.acmicpc.net/problem/1463 1463번: 1로 만들기 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net DP를 사용해서 푸는 문제이다. N을 1로 만들기 위해 필요한 최소 횟수는 N-1을 1로 만들기 위한 최소횟수 + 1 OR 2나 3으로 나누어지면, 나눠지고 남은 몫에 +1하는 횟수이다. # 1463 1로 만들기 import sys input = sys.stdin.readline N = int(input()) dp = [0] * (N+1) # dp리스트를 모두 0으로, N+1개만큼 초기화 시켜준다. for i in range(2, N+1): dp[i] = dp[i - 1] + 1 if i % 3 == 0: # ..

https://www.acmicpc.net/problem/1874 🔎 어려웠던 점 1. "스택에 push하는 순서는 반드시 오름차순을 지키도록 한다." 라는 말이 이해가 어려웠다. 즉, 문제 예시처럼 수열에 4를 첫번째로 나오게 하기 위해서는, 1~3까지의 수를 push하고 4을 push하고, 4을 pop해줘야 한다. 2. 수열을 만들 수 없는 경우를 stack 그림을 통해서는 대략(?) 이해가 갔지만, 코드로 직접 표현하는 부분이 어려웠다. 스택을 만들 수 있는 경우 예시 1 ~ 4를 push 하고, 4와 3을 순차적으로 pop시켜 수열에 넣는다. 수열에 6을 넣기 위해서는 스택에 5와 6을 push하고 6을 pop시킨다. 동일한 과정으로 수열에 8을 넣기 위해서는 7과 8을 push하고 8, 7을 p..

https://aws.amazon.com/ko/solutions/case-studies/SM-entertainment/ ✏기업 정보 연예기획, 음반, 행사 관리 서비스 사업을 운영하는 국내 음반시장 점유율 1위의 최대 음반 기업 ✏당면과제 국내 및 해외에서 관객에게 홍보하기 위해 디지털 채널에 크게 의존 온프레미스 서버, 네트워크, 스토리지로 구성된 인프라에서 운영하였으나, 트래픽 폭증으로 기존의 물리적 인프라로는 한계가 존재 인프라 리소스를 예측하는 것은 거의 불가능. → 새로운 앨범이 출시될 때, 웹사이트 및 아티스트 페이지의 트래픽은 평소의 1천 배에서 1만 배까지 급증 필요한 서버를 조달 받기 위해 걸리는 기간이 1주일로, 너무 오래걸린다는 문제점이 존재 ✏AWS를 선택한 이유 사용 서비스 : S..
보호되어 있는 글입니다.

CI/CD 파이프라인 구축을 위해 Github Action + AWS Elastic Beanstalk 사용 방법과 개념을 정리한 글입니다. 1편 : Github Action 설정과 Elastic Beanstalk을 사용하기 위한 세팅 2편 : 빈스톡으로 배포하기 CI/CD란 무엇일까 CI/CD는 애플리케이션 개발부터 배포 때까지의 모든 단계를 자동화시켜 좀 더 효율적이고 빠르게 사용자에게 배포할 수 있는 것을 뜻한다. 1. CI(Continuous Integration) : 지속적 통합 빌드/테스트 자동화 과정이다. 애플리케이션의 버그 수정이나 새로운 코드 변경이 주기적으로 빌드 및 테스트되면서 공유되는 레파지토리에 통합되는 것을 의미한다. 개발자가 Github에 코드만 올리고, 나머지 작업인 빌드와 테..

GIT 브랜치 전략으로는 많이 사용하는 Git-flow, Github-flow가 있다. ✅ Git flow란 브랜치를 효울적으로 관리하기 위해 사용하는 브랜치 관리 전략 git flow, github flow, gitlab flow 전략 등 다양하게 있다 브랜치를 어떻게 운영할 것인가에 관한 사례, 프로그램이다. master, develop, feature(기능개발), release(출시), hofix(긴급한 수정사항) 장점 브랜치별로 역할을 명확히 나누는 규칙성 디테일한 버전 정보 제공 master 브랜치의 코드는 깔끔한 상태 유지(테스트 후 최종 수정된 것만 반영) 단점 많은 브랜치로 생기는 복잡한 규칙 ✅ Git Repository 구성 Repository는 아래 3가지로 구분한다. Upstream..

전체 아키텍쳐 흐름도 배포 방법으로 여러가지가 있지만, AWS의 흐름은 “소스코드를 압축해서 AWS 스토리지에 저장 후 서버에 전달해서 실행”이다. 크게 두가지 방법이 있다. AWS S3 빌드파일 압축해서 업로드 → AWS EC2에 배포(CodeDeploy 활용) AWS ECR에 도커 이미지 업로드 → AWS ECS에 배포(Task Definition 활용) 나는 EC2에 배포할 것 이므로, 1의 방법을 사용! 1. 개발자가 코드를 변경하고 Github에 푸시하면, Github Actions에서 프로젝트 빌드 후(CI) jar파일을 압축해서(.zip) S3에 업로드한다. 2. CodeDeploy에게 S3에 있는 jar파일로 배포를 진행해달라고 전달한다. 3. CodeDeploy는 배포할 EC2 인스턴스 ..