전체 글 135

[BOJ] 9093번 : 단어뒤집기

■ 문제풀이 · 리스트[start:stop:step] · 리스트[::-1]은 리스트를 역순으로 구성한 리스트를 반환 · 따라서 split()으로 구분 하여 [::-1] 역순으로 반환 · join 함수 - 매개변수로 들어온 리스트 요소를 하나의 문자열로 변환 - ''.join(리스트) : ['a', 'b', 'c'] 리스트를 => 'abc' 문자열로 합쳐서 반환 - '구분자'.join(리스트) : '_'.join(['a', 'b', 'c']) => 'a_b_c' 문자열로 반환 ■ 문제해답 import sys input = sys.stdin.readline t = int(input()) for _ in range(t): sentence = list(map(list, input().split())) for i..

Algoritm/BOJ 2021.09.08

[BOJ] 10828번 : 스택

■ 문제풀이 · push -> append · pop -> pop · size -> len · top -> stack[-1] 'if not stack:' stack이 비어있을 경우 False를 반환함으로 if not 을 사용하여 print(1) 수행 ■ 문제해답 import sys input = sys.stdin.readline n = int(input()) stack = [] for _ in range(n): data = input().split() if data[0] == 'push': stack.append(data[1]) elif data[0] == 'pop': if not stack: print(-1) else: print(stack.pop()) elif data[0] == 'size': pri..

Algoritm/BOJ 2021.09.07

[Linux] ssh-keygen

■ SSH Key란? Server에 접속 할 때 비밀번호 대신 key를 제출 사용 경우 1) 비밀번호보다 높은 수준의 보안 필요시 2) 로그인 없이 자동으로 Server에 접속시 ■ ssh-keygen [Controller] 1. ssh-keygen으로 key 생성 (rsa) $ ssh-keygen -t rsa · ssh-keygen으로 생성할 수 있는 키는 'RSA', 'DSA' 두가지가 존재 2. .ssh 디렉토리 내에 파일 확인 $ cd ~/.ssh · .ssh 디렉토리 파일 내에 'id_rsa', 'id_rsa.pub' 파일 생성 3. ssh copy $ ssh-copy-id study@10.0.2.21 $ ssh-copy-id study@10.0.2.22 $ ssh-copy-id study@10..

Linux 2021.09.06

[Ansible] IaC

■ IaC (Infrastructure as Code) 란? · 코드를 통한 Infra 환경 배포 및 관리 · 자동화 언어로 원하는 구성을 정의 ■ IaC 필요성 · 대규모 / 클라우드 방식의 서비스로 변화되면서 수동관리만으로는 한계가 존재 · 반복적인 작업 요구 · Infra에 때한 빠른 배포 및 버전 관리 필요 ■ IaC 장점 · Check in / Check Out, Revision, Rollback, Test, 배포 등 다양한 기능 제공 · 멱등성을 통한 안정적인 결과 도출 · 인증 정보의 설정을 다룰 수 있음 · 클라우드 환경 및 데브옵스 환경에 적합 · 개발, 테스트, 품질 보증, 스테이징, 릴리스까지의 사이클 구성 ■ IaC 도구 종류 · Chef, Fabric, Puppet, SaltSta..

Cloud/Ansible 2021.09.06

[BOJ] 2164번 : 카드2

■ 코드 from collections import deque import sys input = sys.stdin.readline n = int(input()) queue = deque() for i in range(1, n+1): queue.append(i) while (len(queue) > 1): queue.popleft() v = queue.popleft() queue.append(v) print(queue[0]) ■ 문제 풀이 1) deque 자료형 이용 2) 먼저 popleft() 로 원소 빼기 3) 다음 빼낸 원소 v를 다시 append() 로 추가 4) queue 원소가 하나 남을 때 까지 진행 문제 출처 : https://www.acmicpc.net/problem/2164 2164번: 카..

Algoritm/BOJ 2021.09.05

[AWS] RDS 구축 1

1. DB 인스턴스 생성 - RDS 목록에서 '데이터베이스'를 클릭 2. 데이터베이스 생성 - 오른쪽 상단 '데이터베이스 생성' 클릭 1) 데이터베이스 생성 방식 선택 - 데이터베이스 생성 방식 선택 : 표준 생성 - 엔진 유형 : MySQL 2) 템플릿 - 템플릿 : 프리티어 3) 설정 - 설정 : 'DB 인스턴스 식별자', '마스터 사용자 이름', '마스터 암호', '암호 확인' 입력 4) DB 인스턴스 클래스 - '버스터블 클래스' 에서 'db.t2.micro' 선택 5) 스토리지 6) 연결 - VPC : Default VPC - 서브넷 그룹 : default-vpc (기본값) - 퍼블릭 액세스 : '예' (데이터베이스 인스턴스에 IP 주소가 할당, 사용자 디바이스에서 데이터베이스를 직접 연결 가능..

Cloud/AWS 2021.09.05

[AWS] RDS

■ 데이터베이스 (Database) · 여러 사람에 의해 공유되어 사용될 목적으로 통합하여 관리되는 데이터의 집합 · 특정 다수의 사용자들에게 필요한 정보를 제공 및 조직 내 필요한 정보를 체계적으로 저장 및 보관하여 사용자들에게 제공 ■ RDBMS (Relational Database Management System) · 데이터 간 사전에 정의된 관계(Relational)가 있고, 연관 관계가 있는 데이터 항목들의 모음 · 열과 행으로 이루어진 데이터 테이블로 구성 · 데이터의 각행은 고유의 식별자로 구분, 이를 기본키 (Primary Key) 라고 부름 · 여러 테이블에 있는 행들은 외래키 (Foreign Key) 를 사용하여 상호 연결 · Oracle, MySQL, Microsoft SQL Serv..

Cloud/AWS 2021.09.05

[AWS] AWS VPC : NAT 구성 (구축 3)

■ NAT (Network Address Translation) 게이트웨이 · 외부 네트워크에 알려진 것과 다른 IP 주소를 사용하는 내부 네트워크에서, 내부 IP 주소를 외부 IP 주소로 변환 · 프라이빗 서브넷 내에 있는 인스턴스를 인터넷, 다른 AWS에 연결 · 하지만 외부망 또는 인터넷에서 해당 프라이빗 서브넷에 연결 불가 · 보안상 중요한 서비스인 경우 사용 · 윈도우 패치나 보안 업데이트, 소프트웨어 업데이트 등 인터넷을 통해 받아야 하는 경우 ☆ NAT 게이트웨이를 구성하기 위한 조건 ☞ Public Subnet 지정 (Public Subnet 에서 직접 NAT 관리) ☞ Elastic IP 주소 필요 ☞ NAT 게이트를 만든 후 인터넷 트래픽이 NAT 게이트웨이로 통신이 가능하도록 Priv..

Cloud/AWS 2021.09.01