본문 바로가기
반응형

분류 전체보기126

[백준/Python] 9659번 돌 게임 5 문제 [백준/Python] 9659번 돌 게임 5 https://www.acmicpc.net/problem/9659 9659번: 돌 게임 5 첫째 줄에 N이 주어진다. (1 ≤ N ≤ 1,000,000,000,000) www.acmicpc.net 소스코드 n = int(input()) if n % 2 == 1: print('SK') else: print('CY') 게임을 계산해보면 n이 홀수일때는 상근(SK)이 승리하고, 짝수일때는 창영(CY)가 승리하는 패턴을 찾을 수 있습니다. 2024. 2. 22.
[백준 / Python] 7569번 토마토 문제 https://www.acmicpc.net/problem/7569 7569번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N과 쌓아올려지는 상자의 수를 나타내는 H가 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M ≤ 100, 2 ≤ N ≤ 100, www.acmicpc.net 소스코드 #3차원 dfs / / replit.com from collections import deque # append():- This function is used to insert the value in its argument to the right end of the deque. # appendleft():- This function is used to inse.. 2024. 2. 17.
[백준 / Python] 1927번 최소 힙 문제 https://www.acmicpc.net/problem/1927 1927번: 최소 힙 첫째 줄에 연산의 개수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 N개의 줄에는 연산에 대한 정보를 나타내는 정수 x가 주어진다. 만약 x가 자연수라면 배열에 x라는 값을 넣는(추가하는) 연산이고, x가 0 www.acmicpc.net 소스코드 import heapq import sys # 최소힙 문제 # heapq.heappush(heap, item) : item을 heap에 추가 # heapq.heappop(heap) : heap에서 가장 작은 원소를 pop & 리턴. 비어 있는 경우 IndexError가 호출됨. # heapq.heapify(x) : 리스트 x를 즉각적으로 heap으로 변환함 N =.. 2024. 2. 13.
[백준 / Python] 9625번 BABBA 문제 https://www.acmicpc.net/problem/9625 9625번: BABBA 상근이는 길을 걷다가 신기한 기계를 발견했다. 기계는 매우 매우 큰 화면과 버튼 하나로 이루어져 있다. 기계를 발견했을 때, 화면에는 A만 표시되어져 있었다. 버튼을 누르니 글자가 B로 변했 www.acmicpc.net 소스 코드 a, b = 1, 0 n = int(input()) for i in range(n): a, b = b, a + b print(a, b) 간단한 규칙을 찾는 문제입니다. 2024. 2. 8.
[AWS] 람다 사용해보기 / AWS Lambda AWS Lambda AWS 람다는 AWS 서버리스 서비스 중 하나입니다. 지원언어는 Java, Go, PowerShell, Node.js, C#, Python, Ruby이 있고 이 이외의 언어를 사용하고 싶다면 Runtime API를 사용하면 됩니다. AWS Lambda – FAQ aws.amazon.com AWS 람다에 올린 코드는 AWS S3 버킷에 보호되어 저장됩니다. AWS nodejs 예제 aws 검색창에 lambda를 검색하여 접속합니다. 함수 생성을 클릭합니다. 함수이름, 런타임, 아키텍처를 선택하고 함술르 생각합니다. 이번 예제에서는 런타임: nodejs 아키텍처 x86_64를 사용합니다. export const handler = async (event) => { var name1 = ev.. 2024. 1. 24.
[AWS] Elastic Load Balancer / 기능, 종류 AWS Elastic Load Balancer AWS에서 제공하는 로드 벨런서이다. 줄여 ELB라고도 한다. 주 역활은 트래픽을 로드 벨런싱하는 것이다. Elastic Load Balancer 기능 1. 부하분산 트래픽을 2개 이상의 서버 자원에 가도록 지정하여 설정하면 자동으로 트래픽이 분산되어 부하 분산의 효과를 누릴 수 있다. 또한 ELB는 트래픽의 도착지와의 연결을 감시하기 때문에 서버 장애가 발생했을 경우 다른 서버로 트래픽을 보낸다. (가용성 향상) ELB는 자체적으로 상황에 따라 스케일되므로 ELB의 성능 저하에 대해서는 생각하지 않아도 된다. 2. 모니터링 ELB는 항상 대상에 대한 연결을 감시한다. 요청 추적이나 CloudWatch 지표를 취득 할 수 있다. 3. 보안 ELB는 AWS의 .. 2024. 1. 20.
[AWS] AWS Route 53 - DNS 레코드 종류 정리 Route 53 DNS 레코드 정리표 레코드 이름 내용 A 레코드 IPv4 주소에 대한 레코드 AAAA 레코드 IPv6 주소에 대한 레코드 CAA 레코드 도메인 또는 하위도메인의 인증기관(CA)을 지정할 수 있는 레코드 CNAME 레코드 특정 호스트 이름에 대한 별칭을 정의하는 레코드 DS 레코드 하위 도메인에서 DNSSEC를 정의하는 레코드 MX 레코드 해당 도메인에 대한 메일 서버의 호스트 이름을 정의하는 레코드 NAPTR 레코드 동적 위임 발견 시스템(DDDS) 응용프로그램에서 사용되는 레코드 NS 레코드 호스팅 영역의 네임서버이름을 정의하는 레코드 PTR 레코드 IP 주소를 도메인 이름으로 매핑하는 레코드 SOA 레코드 start of Authority / 도메인 및 대응하는 Route 53 호스.. 2024. 1. 14.
[알고리즘 / 정렬] 병합정렬(merge sort) / 파이썬코드 병합정렬이란 합병정렬이라고도 불리는 병합정렬(merge sort)는 존 폰 노이만이 1945년도에 개발한 분할 정복을 기반으로 하는 정렬 알고리즘이다. 작동원리 1. 분할 (divide) 하나의 요소만을 가질때까지 입력 배열을 반으로 계속 분할한다. 2. 정복(conquer), 결합(merge) 2개의 하위배열을 정렬하며 병합하고 최종적으로 정렬된 배열을 완성한다. 시간복잡도 최선, 평균, 최악의 경우 O(n log n) 배열을 반으로 분할할때 log n 시간이 걸리고 각 레벨에서 n개의 요소를 비교하기때문 공간복잡도 O(n) 장단점 장점 최악의 경우에도 O(n log n)의 시간복잡도인 안정적인 정렬방법이다. 큰 데이터에 효율적이다. 단점 추가적인 메모리가 필요하다 (in-place 정렬이 아니다) 가.. 2024. 1. 1.
[백준 / Python] 11003번 최솟값 찾기 문제 https://www.acmicpc.net/problem/11003 11003번: 최솟값 찾기 N개의 수 A1, A2, ..., AN과 L이 주어진다. Di = Ai-L+1 ~ Ai 중의 최솟값이라고 할 때, D에 저장된 수를 출력하는 프로그램을 작성하시오. 이때, i ≤ 0 인 Ai는 무시하고 D를 구해야 한다. www.acmicpc.net 11003번 최솟값 찾기 파이썬 풀이 from collections import deque N, L = map(int, input().split()) deque = deque() data = list(map(int, input().split())) for i in range(N): while deque and deque[-1][0] > data[i]: dequ.. 2023. 12. 29.
[백준 / Python] 17504번 제리와 톰 2 문제 https://www.acmicpc.net/problem/17504 17504번: 제리와 톰 2 $$ 1 - \cfrac{1}{2 + \cfrac{1}{7 + \cfrac{1}{1 + \cfrac{1}{8}}}} = 1 - \cfrac{1}{2 + \cfrac{1}{7 + \cfrac{8}{9}}} = 1 - \cfrac{1}{2 + \cfrac{9}{71}} = 1 - \cfrac{71}{151} = \cfrac{80}{151} $$ www.acmicpc.net 코드 n = int(input()) data = list(map(int, input().split())) datar = data[::-1] temp = 1 a, b = 1, 1 # a / b for i in range(len(datar)).. 2023. 12. 25.
728x90
반응형