본문 바로가기

About

(219)
[Programmers] 이중우선순위큐 (Python 풀이) https://programmers.co.kr/learn/courses/30/lessons/42628 코딩테스트 연습 - 이중우선순위큐 programmers.co.kr 이 문제는 입력되는 명령어를 하나씩 읽어와 명령어의 동작대로 처리한다면 쉽게 풀 수 있는 문제입니다. 최댓값/최솟값을 삭제하는 연산에서 최댓값/최솟값이 둘 이상인 경우, 하나만 삭제합니다.라는 조건이 있어서 다음과 같이 처리했습니다. # 최대, 최소인 값이 여러개인 경우에도 remove()는 하나의 원소만 삭제합니다. answer.remove(max(answer)) answer.remove(min(answer)) 소스코드 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 def solution..
[Programmers] 빛의 경로 사이클 (Python 풀이) https://programmers.co.kr/learn/courses/30/lessons/86052 코딩테스트 연습 - 빛의 경로 사이클 각 칸마다 S, L, 또는 R가 써져 있는 격자가 있습니다. 당신은 이 격자에서 빛을 쏘고자 합니다. 이 격자의 각 칸에는 다음과 같은 특이한 성질이 있습니다. 빛이 "S"가 써진 칸에 도달한 경우, 직진 programmers.co.kr 이 문제는 좌표에서의 빛의 이동 방향에 따라 어떤 사이클이 존재하는지, 또 해당 사이클의 길이는 어떻게 되는지 조사하는 문제입니다. ㅁ 각 좌표에 대해 4방향에서 전송되는 값에 대하여 탐색을 하며 빛을 이동 시킵니다. 만약 중복이 되는 방향이 나타나는 경우 탐색을 정지해야합니다. 예를 들어 좌표 A에 방향 d가 중복되서 발견되는 경우..
[Programmers] 입국심사 (Python 풀이) https://programmers.co.kr/learn/courses/30/lessons/43238?language=python3 코딩테스트 연습 - 입국심사 n명이 입국심사를 위해 줄을 서서 기다리고 있습니다. 각 입국심사대에 있는 심사관마다 심사하는데 걸리는 시간은 다릅니다. 처음에 모든 심사대는 비어있습니다. 한 심사대에서는 동시에 한 programmers.co.kr 이 문제는 풀어야할 문제는 쉽지만 제한사항이 엄격하여 알고리즘을 잘 사용하지 않으면 통과하기 쉽지 않습니다. 제한사항 입국심사를 기다리는 사람은 1명 이상 1,000,000,000명 이하입니다. 각 심사관이 한 명을 심사하는데 걸리는 시간은 1분 이상 1,000,000,000분 이하입니다. 심사관은 1명 이상 100,000명 이하입니..
[Programmers] 디스크 컨트롤러 (Python 풀이) https://programmers.co.kr/learn/courses/30/lessons/42627 코딩테스트 연습 - 디스크 컨트롤러 하드디스크는 한 번에 하나의 작업만 수행할 수 있습니다. 디스크 컨트롤러를 구현하는 방법은 여러 가지가 있습니다. 가장 일반적인 방법은 요청이 들어온 순서대로 처리하는 것입니다. 예를 programmers.co.kr 이 문제를 풀기 위해서는 python의 heapq 라이브러리를 다룰 수 있어야합니다. 관련 정보는 다음 사이트를 참고하세요. https://docs.python.org/ko/3/library/heapq.html 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 import ..
[Linux] LVM(Logical Volume Manager) 구성하기(CentOS 7) 보호되어 있는 글입니다.
[Terraform] Terraform을 이용하여 AWS EC2 Ubuntu Instance 생성(VPC, Subnet, Private IP 설정) Terraform을 이용하여 AWS 환경에서 Ubuntu 인스턴스를 생성하는 예제에 대하여 살펴보겠습니다. 다음의 Terraform Document를 참조하였습니다. https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/instance Terraform Registry registry.terraform.io 실습환경은 다음과 같습니다. Ubuntu 22.04 LTS aws-cli/2.7.0 Terraform v1.3.0-dev on linux_arm64 Terraform 코드 작성 인스턴스 타입 및 AMI 확인 코드를 작성하기전 AWS Management Console에 접속하여 필요한 정보를 확인해야합니다. 1. 인스턴스..
[Python] Context Manager(컨텍스트 관리자) Context Manager 컨텍스트 매니저는 원하는 타이밍에 정확하게 리소스를 할당하고 제공하는 역할을 합니다. 보통 리소스 관리와 관련하여 Context Manager를 자주 사용합니다. 일단 파일을 열면 파일 디스크립터의 누수(resource leak)을 막기 위해 작업이 끝나면 적절히 닫히길 기대합니다. 또는 서비스나 소켓에 대한 연결을 열었을 때도 적절히 닫거나 임시 파일을 제거하는 등의 작업을 해야합니다. 위와 같은 경우에 일반적으로 할당된 모든 리소스를 해제해야 합니다. 모든 것이 잘 처리되었을 경우의 해제는 쉽지만 예외가 발생하거나 오류를 처리해야 하는 경우 모든 조합과 실행 경로에 대하여 처리하는 것은 쉽지 않습니다. 이 때 일반적으로 finally 블록에 정리 코드를 넣는 방법이 있습니..
[Terraform] Terraform을 이용하여 AWS 리소스 생성/변경/삭제 (AWS Provider) Terraform에서 AWS Provider를 이용하여 간단하게 VPC를 생성/변경/삭제하는 실습을 해보겠습니다. 실습환경은 다음과 같습니다. Ubuntu 22.04 LTS aws-cli/2.7.0 Terraform v1.3.0-dev on linux_arm64 Terraform AWS Provider Terraform AWS Provider 관련된 정보는 다음 사이트에서 확인할 수 있습니다. https://registry.terraform.io/providers/hashicorp/aws/latest Terraform Registry registry.terraform.io AWS 자격 증명 확인 AWS 리소스에 대한 권한이 필요하므로 AWS CLI 사용자 인증이 활성화되어 있어야 합니다. AWS CLI ..
[AWS] AWS CLI 자격 증명하기(aws configure 명령어) AWS CLI에서 다양한 리소스를 다루기 위해서는 자격 증명이 필요합니다. AWS 계정 혹은 액세스 키를 통하여 자격 증명을 할 수 있는데, 액세스 키를 이용하여 자격 증명을 하는 방법에 대하여 다루어 보겠습니다. AWS CLI에서 자격 증명 우선순위는 다음과 같습니다. CLI 명령어 옵션 환경 변수 CLI 자격 증명 파일 - ~/.aws/credentials CLI 설정 파일 - ~/.aws/config 컨테이너 자격 증명 (ECS의 경우) 인스턴스 프로파일 자격 증명 (EC2) 실습할 내용은 CLI 자격 증명 파일을 이용한 자격증명 입니다. 만약 AWS CLI가 없다면 다음 사이트에서 다운로드 받으시면 됩니다. https://docs.aws.amazon.com/ko_kr/cli/latest/userg..
[AWS] Route53으로 도메인(DNS) 등록하기 Amazon Route 53는 높은 가용성과 확장성이 뛰어난 클라우드 Domain Name System (DNS) 웹 서비스입니다. https://aws.amazon.com/ko/route53/ Amazon Route 53 - Amazon Web Services Amazon Route 53는 다른 AWS 기능 및 서비스와 잘 연동되도록 설계되었습니다. Amazon Route 53를 사용하여 도메인 이름을 Amazon EC2 인스턴스, Amazon S3 버킷, Amazon CloudFront 배포 및 기타 AWS 리소스에 매핑할 aws.amazon.com Route53을 이용하여 DNS를 등록하는 방법에 대하여 알아보겠습니다. Route53 도메인 등록 Route53에 도메인을 등록하는 절차는 다음과 같습..