전체 글 527

HTTP 요청 매서드

GET GET 메서드는 특정 리소스의 표시를 요청합니다. GET을 사용하는 요청은 오직 데이터를 받기만 합니다. Head HEAD 메서드는 GET 메서드의 요청과 동일한 응답을 요구하지만, 응답 본문을 포함하지 않습니다. POST POST 메서드는 특정 리소스에 엔티티를 제출할 때 쓰입니다. 이는 종종 서버의 상태의 변화나 부작용을 일으킵니다. PUT PUT 메서드는 목적 리소스 모든 현재 표시를 요청 payload로 바꿉니다. DELETE DELETE 메서드는 특정 리소스를 삭제합니다. CONNECT CONNECT 메서드는 목적 리소스로 식별되는 서버로의 터널을 맺습니다. OPTIONS OPTIONS 메서드는 목적 리소스의 통신을 설정하는 데 쓰입니다. TRACE TRACE 메서드는 목적 리소스의 경로..

구현

완전 탐색: 모든 경우의 수를 주저 없이 다 계산하는 해결 방법 시뮬레이션: 문제에서 제시한 알고리즘을 한 단계씩 차례대로 직접 수행 파이썬에서 리스트 크기 파이썬에서의 고려 사항은 메모리의 제한이다. 대체로 테스트에서는 128~512MB로 메모리를 제한하는데 알고리즘 문제 중 수백만 개 이상의 데이터를 처리해야하는 문제가 출제되곤 한다. 데이터의 개수(리스트의 길이) 메모리 사용량 1,000 약 4KB 1,000,000 약 4MB 10,000,000 약 40MB 구현 문제에 접근하는 방법 일반적으로 알고리즘 문제에서의 2차원 공간은 행렬의 의미로 사용됩니다. 1. 상하 좌우 # N 입력받기 n = int(input()) x, y = 1, 1 plans = input().split() # L, R, U,..

그리디 알고리즘

그리디 알고리즘은 현재 상황에서 지금 당장 좋은 것만 고르는 방법을 의미한다. 일반적인 그리디 알고리즘은 문제를 풀기 위한 최소한의 아이디어를 떠올릴 수 있는 능력을 요구합니다. 그리디 해법은 그 정당성 분석이 중요합니다. 단순히 가장 좋아 보이는 것을 반복적으로 선택해도 최적의 해를 구할 수 있는지 검토 5-7-9가 가장 큰 값을 가집니다. 하지만 그리드 알고리즘을 사용하면 5-10-4를 선택 됩니다. 문제 1이 될 때까지 어떠한 수 N이 1이 될 때까지 다음의 두 과정 중 하나를 반복적으로 선택하여 수행하려고 합니다. 단, 두번째 연산은 N이 K로 나누어. 떨어질 때만 선택할 수 있습니다. - N에서 1을 뺍니다. - N을 K로 나눕니다. ​ 예를 들어 N이 17, K가 4라고 가정합니다. 이때 1번..

파이썬 문법

리스트의 인덱싱과 슬라이싱 a = [1,2,3,4,5,6 print(a[1:4]) 리스트 컴프리헨션 1. 리스트를 초기화하는 방법 중 하나 1. 대괄호 안에 조건문과 반복문을 적용하여 리스트를 초기화 할 수 있습니다. # 0부터 9까지의 수를 포함하는 리스트 array = [i for i in range(10)] print(array) n = 2 m = 3 array = [[0] * m for _ in range(n)] print(array) #[[0,0,0],[0,0,0]] 사전 자료형은 키(key)와 값(value)의 쌍을 데이터로 가지는 자료형 사전 자료형은 키와 값의 쌍을 데이터로 가지며, 원하는 '변경 불가능한(immutable) 자료형'을 키로 사용할 수 있습니다. 파이썬의 사전 자료형은 해시..