본문 바로가기

전체 글

(162)
섹션 10 Dynamic Programming - 3. 최대 부분 증가수열(LIS) 문제 설명N개의 자연수로 이루어진 수열이 주어질 때 그 중에서 가장 길게 증가하는 부분 수열을 찾는 문제이다. 단, 이 부분 수열은 반드시 원래 수열의 순서를 유지해야 하며 연속되지 않아도 된다.예시 입력85 3 7 8 6 2 9 4출력4위 예제에서 가능한 최대 증가 수열은 3 → 7 → 8 → 9이며 길이는 4이다.입력첫 줄에 수열의 길이 N이 주어진다. (3 ≤ N ≤ 1,000)둘째 줄에 N개의 자연수가 주어진다.출력부분 증가 수열 중 가장 긴 수열의 길이를 출력다.코드 구현import java.util.*;public class Main { static int[] dy; public int solution(int[] arr) { int answer = 0; dy = new int[arr.len..
섹션 10 Dynamic Programming - 2. 돌다리 건너기 문제 설명철수는 개울을 건너기 위해 돌다리를 건너야 합니다.돌은 1번부터 N번까지 번호가 매겨져 있고, 철수는 한 번에 한 칸 혹은 두 칸씩 이동할 수 있습니다.즉, 1칸 or 2칸씩만 앞으로 이동할 수 있을 때 N개의 돌을 건너는 경우의 수는 몇 가지일까요?이 문제는 대표적인 피보나치 수열 형태의 DP 문제입니다. ※ 반대편 땅은 N번째 돌 바로 다음 칸입니다. 즉, 도착 지점은 (N+1)번 칸입니다.입력자연수 N (3 ≤ N ≤ 35)(돌의 개수)출력철수가 개울을 건너는 모든 경우의 수예시 입력7예시 출력34코드 구현import java.util.Scanner;public class Main { static int[] dy; public int solution(int n) { ..
섹션 10 Dynamic Programming - 1. 계단오르기 설명철수는 계단을 오를 때 한 번에 한 칸 또는 두 칸을 오를 수 있다.총 N계단이 주어졌을 때 철수가 정상까지 올라갈 수 있는 방법의 수를 구하자.입력자연수 N (3 ≤ N ≤ 35)출력철수가 정상까지 올라갈 수 있는 경우의 수예시 입력7예시 출력21해결 방법철수가 n번째 계단에 도달하는 경우는 다음 두 가지 경우에서 올 수 있다:(n-1)번째에서 1칸 올라옴(n-2)번째에서 2칸 올라옴따라서 점화식: dy[n] = dy[n-1] + dy[n-2]피보나치 수열과 동일한 구조코드 구현import java.util.*;public class Main { static int[] dy; public int solution(int n) { dy[1] = 1; dy[2] = 2..
섹션 9 Greedy - 7. 원더랜드(최소스패닝트리 - 프림, PriorityQueue) 문제 설명원더랜드는 모든 도시를 유지하면서 최소 비용만으로 도로를 연결하려고 한다.즉, 모든 도시를 연결하는데 드는 최소 유지비용을 구해야 한다.이는 최소 스패닝 트리(MST) 문제이며, 두 가지 알고리즘 중 하나인 프림 알고리즘으로 해결할 수 있다.입력첫째 줄: 도시의 개수 V(1 ≤ V ≤ 100), 도로의 개수 E(1 ≤ E ≤ 1,000)이후 E줄: 각 줄마다 세 정수 A, B, C (A번 도시와 B번 도시가 유지비용 C인 도로로 연결됨)출력모든 도시를 연결할 수 있는 최소 유지비용 출력예시 입력 9 121 2 121 9 252 3 102 8 172 9 83 4 183 7 554 5 445 6 605 7 387 8 358 9 15예시 출력 196해결 방법우선순위 큐(PriorityQueue) 와 ..
AWS Certified Cloud Practitioner 모듈3- 요약 문제 정리 AWS Training에서 제공하는 AWS Cloud Practitioner (Korean) 강의 문제 정리 내용입니다.문제 1. 다음 중 AWS 글로벌 인프라에 대한 올바른 설명은 무엇입니까?보기A. 리전은 단일 가용 영역으로 구성됩니다.B. 가용 영역은 두 개 이상의 리전으로 구성됩니다.C. 리전은 세 개 이상의 가용 영역으로 구성됩니다. ✅D. 가용 영역은 단일 리전으로 구성됩니다.정답: C해설: 대부분의 리전은 3개 이상의 가용 영역(AZ)으로 구성되어 있어 고가용성과 장애 복구가 가능하도록 설계되어 있다.문제 2. 리전을 선택할 때 고려해야 할 요소는 무엇입니까? (2개 선택)보기A. 데이터 거버넌스 및 법적 요구 사항 준수 ✅B. 고객과의 근접성 ✅C. 연중무휴 기술 지원 이용 가능D. 다른 ..
AWS Certified Cloud Practitioner 모듈3 - AWS 리소스 프로비저닝 AWS Training에서 제공하는 AWS Cloud Practitioner (Korean) 강의 요약 정리 내용입니다.1. AWS 조작모든 AWS 리소스는 API 호출을 통해 생성, 구성, 관리된다.API: "어떻게 요청을 보내면, 어떤 응답을 받을지"에 대한 약속2. AWS와 상호작용하는 주요 방법방법특징자동화 적합도AWS Management Console웹 기반 GUI로 AWS 리소스를 클릭으로 생성/관리❌ (수동 작업 중심)AWS CLI (Command Line Interface)터미널에서 명령어로 API 호출, 스크립트 작성 가능✅AWS SDK (Software Development Kit)다양한 언어로 AWS와 상호작용하는 프로그램 작성✅AWS CloudFormationYAML/JSON 템플릿..
AWS Certified Cloud Practitioner 모듈3 - 엣지 로케이션 AWS Training에서 제공하는 AWS Cloud Practitioner (Korean) 강의 요약 정리 내용입니다.1. 리전은 ‘본사’AWS의 리전(region) 은 특정 지역(서울, 도쿄, 오레곤 등)에 설치된 큰 본사처럼 생각할 수 있다.이곳에 서버(데이터, 애플리케이션 등)를 저장하고 서비스를 운영한다.2. 가용 영역은 ‘본사 내 건물들’리전 내에 여러 가용 영역(AZ) 이 있다.서로 떨어져 있지만 함께 작동하도록 설계된 물리적 데이터센터 그룹이다.한 곳에 문제가 생겨도 나머지가 작동할 수 있도록 설계됨 → 고가용성 보장3. 전 세계 고객 대응은 CloudFront로고객이 서울이 아니라 뭄바이에 있다면?계속 서울까지 요청이 오가면 느리다.그래서 고객 근처(뭄바이)에 데이터 복사본을 캐싱해두는 ..
AWS Certified Cloud Practitioner 모듈3 - AWS 글로벌 인프라 AWS Training에서 제공하는 AWS Cloud Practitioner (Korean) 강의 요약 정리 내용입니다.리전(Region)지리적으로 분리된 AWS의 데이터 센터 모음 (ex. 서울 리전, 도쿄 리전, 오레곤 리전 등) 가용 영역(AZ: Availability Zone)한 리전 내에 위치한 물리적으로 독립된 데이터 센터 또는 데이터 센터 그룹리전 선택 시 고려 요소 (4가지)1. 규정 준수규정상 특정 국가에 데이터를 저장해야 하는 경우가 있음예: 영국 기업 → 런던 리전 선택2. 고객과의 근접성리전이 고객과 가까울수록 콘텐츠 전송 속도가 빠름예: 고객이 싱가포르에 많다면 → 싱가포르 리전 선택 고려3. 리전 내 사용 가능한 서비스 (기능가용성) 모든 AWS 서비스가 모든 리전에 있는 것은 ..