본문 바로가기

전체 글

(162)
AWS Cloud Practitioner Essentials 모듈 4 - 서브넷 및 네트워크 액세스 제어 목록 AWS Training에서 제공하는 AWS Cloud Practitioner (Korean) 강의 요약 정리 내용입니다.1. 서브넷과 격리구성 요소설명비유퍼블릭 서브넷외부(인터넷)에서 접근 가능한 리소스 위치계산원: 고객 응대프라이빗 서브넷내부에서만 접근 가능한 민감한 리소스바리스타: 계산원을 통해서만 접근 가능서브넷 역할VPC 내 리소스를 운영·보안 요구에 따라 구분카운터를 구역별로 나눈 것VPC는 커피숍 전체, 서브넷은 계산원/바리스타 워크스테이션과 같은 공간퍼블릭 서브넷: 웹 서버, 프라이빗 서브넷: DB 등 민감한 데이터 저장2. 트래픽 흐름과 보안 제어구성 요소기능비유특징인터넷 게이트웨이인터넷 ↔ VPC 통로커피숍 출입문외부 연결 필수네트워크 ACL서브넷 단위 트래픽 제어공항 출입국 심사스테이트..
AWS Cloud Practitioner Essentials 모듈 4 - AWS와의 연결 AWS Training에서 제공하는 AWS Cloud Practitioner (Korean) 강의 요약 정리 내용입니다.모듈 4 소개 요약커피숍 = AWS 계정고객이 바리스타에게 직접 주문 → 보안 문제 발생바리스타는 커피(백엔드 작업)에 집중해야 하므로 직접 상호작용하면 안 된다.VPC 핵심 개념VPC: 사용자 정의 가상 네트워크. AWS 리소스를 격리된 공간에서 실행서브넷: VPC 내 IP 주소 범위로 리소스를 퍼블릭 또는 프라이빗으로 구분비유를 통한 구성 설명역할위치설명고객인터넷AWS 외부 사용자계산원퍼블릭 서브넷고객과 상호작용, 외부와 통신 가능 (예: 웹 서버)바리스타프라이빗 서브넷내부 작업 전담, 외부와 직접 통신 없음 (예: 데이터베이스 등)AWS와의 연결 요약AWS에서는 수많은 고객과 리소..
백준 2667번 - 단지번호붙이기 (Java, BFS) 문제 요약https://www.acmicpc.net/problem/2667정사각형 모양의 지도(n × n)가 주어진다.각 칸은 0 또는 1로 표시되어 있으며, 1은 집이 있는 곳 0은 빈 공간이다.상하좌우로 연결된 집들을 하나의 단지로 간주한다.지도에서 총 단지 수를 구하고, 각 단지에 속한 집의 수를 오름차순으로 출력하라.접근 방식BFS (너비 우선 탐색) 를 이용해 단지를 탐색한다.지도 전체를 순회하면서 방문하지 않은 집(1)이 나타나면 BFS를 시작한다.BFS를 통해 상하좌우로 연결된 모든 집을 찾고, 해당 단지의 집 수를 센다.집을 방문할 때마다 0으로 바꿔 재방문을 막는다.각 단지의 집 수를 리스트에 저장하고, 정렬 후 출력한다.전체 코드import java.util.*;class Point {..
백준 2583번 영역 구하기 (Java, BFS) 문제 요약https://www.acmicpc.net/problem/2583도화지의 크기와 그 위에 그려진 K개의 직사각형이 주어질 때 직사각형을 제외한 나머지 빈 영역의 개수와 각 영역의 넓이를 구하는 문제입니다.도화지는 M × N 크기의 2차원 배열로 표현됩니다.좌표는 (x1, y1) ~ (x2, y2) 형태로 주어지며, 왼쪽 아래가 시작점, 오른쪽 위가 끝점입니다.직사각형이 채워진 영역은 1로 표시하고, 나머지 빈 영역은 0입니다.0인 영역끼리 인접한 곳을 하나의 영역으로 간주합니다.(상하좌우 연결된 경우만 인접)출력:빈 영역의 개수각 영역의 넓이 (오름차순)전체 코드import java.util.*;class Point { public int x, y; Point(int x, int y) { t..
EC2 SSH 접속 오류 해결 – "Error establishing SSH connection to your instance" 예전에 만들었던 프로젝트를 다시 디벨롭하고자 서버를 새로 구축하고 기존에 구성해둔 CI/CD 파이프라인을 다시 작동시키는 과정에서 SSH 접속 오류가 발생했습니다. 에러 메시지는 아래와 같았습니다.❌ Failed to connect to your instanceError establishing SSH connection to your instance. Try again later. 결론적으로 볼륨 복구 및 키 재설정을 통해 문제를 해결했고, CI/CD도 무사히 구축했습니다. 이 글에서는 문제 발생부터 해결까지의 흐름을 정리합니다.[문제 상황]이전 서버는 비용 문제로 중지하고, 계정을 탈퇴한 상황새로운 EC2 인스턴스를 생성하며 새 키 페어를 .ppk 형식으로 생성해당 .ppk 키를 사용해 Putty로 E..
섹션 10 Dynamic Programming - 6. 최대점수 구하기(냅색 알고리즘) 설명정보올림피아드 대회를 앞두고, 제한된 시간 안에 여러 문제 중 최대 점수를 얻기 위한 전략을 세우는 문제입니다.각 문제는 점수와 소요 시간이 주어지고, 문제는 한 번만 풀 수 있습니다.제한 시간 안에서 점수 총합을 최대화해야 합니다.이 구조는 전형적인 0/1 Knapsack 문제입니다.입력첫 줄: 문제 수 N (1 ≤ N ≤ 50), 제한 시간 M (10 ≤ M ≤ 300)이후 N줄: 각 줄에 문제의 점수와 소요 시간출력제한 시간 내에 얻을 수 있는 최대 점수예시 입력5 2010 525 1215 86 37 4예시 출력41설명25점(12분), 15점(8분) 조합 → 총 40점 (가능)10점(5분), 15점(8분), 6점(3분) 조합 → 41점 (가능)→ 따라서 정답은 41점코드 구현import java..
섹션 10 Dynamic Programming - 5. 동전교환(냅색 알고리즘) 설명여러 종류의 동전이 주어졌을 때, 어떤 금액 M을 가장 적은 수의 동전으로 교환하는 문제입니다.단, 각 동전은 무한히 사용할 수 있습니다.이 문제는 냅색 알고리즘(Unbounded Knapsack, 무한대 개수의 아이템을 사용하는 DP)의 대표 문제입니다. 냅색(배낭) 알고리즘 : 주어진 제한(무게, 금액 등) 안에서 최대 가치나 최적의 결과를 찾는 DP 알고리즘입니다.입력첫 번째 줄: 동전의 종류 개수 N (1 ≤ N ≤ 50)두 번째 줄: N개의 동전 단위 (각 단위는 100원 이하 자연수)세 번째 줄: 거슬러줄 금액 M (1 ≤ M ≤ 500)출력금액 M을 거슬러줄 때 사용되는 최소 동전 개수예시# 예시 입력31 2 515# 예시 출력3설명5 + 5 + 5 = 15→ 동전 3개로 해결할 수 있..
섹션 10 Dynamic Programming - 4. 가장 높은 탑 쌓기(LIS 응용) 설명밑면이 정사각형인 벽돌들을 아래에서 위로 쌓아 올려 가장 높게 탑을 만드는 문제입니다.단, 벽돌을 쌓을 때 아래 조건들을 반드시 지켜야 합니다.쌓을 수 있는 조건벽돌은 회전 불가 (가로세로 바꿔서 쓸 수 없음)밑면 넓이가 큰 벽돌만 작은 벽돌 위에 올 수 있음무게가 더 가벼운 벽돌 위에 무거운 벽돌을 올릴 수 없음밑면 넓이와 무게가 같은 벽돌은 없다 (→ 중복을 신경 쓸 필요 없음)입력첫 줄: 벽돌의 수 N (1 ≤ N ≤ 100)다음 줄부터: 각 벽돌의 (밑면 넓이, 높이, 무게) 정보가 주어짐모든 값은 10,000 이하의 자연수출력만들 수 있는 가장 높은 탑의 총 높이🔍 예시예시 입력 525 3 44 4 69 2 316 2 51 5 2예시 출력 10해결 방법넓이 기준 내림차순 정렬밑면 넓이 기준..