전체 글

전체 글

    [알고리즘][파이썬] 재귀함수 / Recursive Function

    알고리즘 공부하다가.. 한 번 정리해둬야겠다 싶은 재귀함수 레쮸고 재귀함수 (Recursive Function) 자기 자신을 호출하는 함수 프랙털(Fractal) 구조와 흡사 기본 예제 def recursive(): print("재귀 함수 호출") recursive() recursive() 위와 같이 코드 실행 시 "재귀 함수 호출" 문자열이 계속 출력되다가 오류 메세지가 출력된다. "RecursionError: maximum recursion depth exceeded while pickling an object" 재귀의 최대 깊이를 초과했다는 내용으로 파이썬 인터프리터는 호출 횟수 제한이 있기 때문에 생기는 오류이다. (프로그래밍 대회에서는 파이썬의 재귀 호출 제한을 처리하기 위해 라이브러리를 사용하..

    [백준][파이썬] 11866번 요세푸스 문제 0

    11866번 : 요세푸스 문제 0 문제 요세푸스 문제는 다음과 같다. 1번부터 N번까지 N명의 사람이 원을 이루면서 앉아있고, 양의 정수 K(≤ N)가 주어진다. 이제 순서대로 K번째 사람을 제거한다. 한 사람이 제거되면 남은 사람들로 이루어진 원을 따라 이 과정을 계속해 나간다. 이 과정은 N명의 사람이 모두 제거될 때까지 계속된다. 원에서 사람들이 제거되는 순서를 (N, K)-요세푸스 순열이라고 한다. 예를 들어 (7, 3)-요세푸스 순열은 이다. N과 K가 주어지면 (N, K)-요세푸스 순열을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 1,000) 출력 예제와 같이 요세푸스 순열을 출력한다. 링크 11866번: 요세푸스 ..

    [백준][파이썬] 2161번 카드1

    2161번 : 카드1 문제 N장의 카드가 있다. 각각의 카드는 차례로 1부터 N까지의 번호가 붙어 있으며, 1번 카드가 제일 위에, N번 카드가 제일 아래인 상태로 순서대로 카드가 놓여 있다. 이제 다음과 같은 동작을 카드가 한 장 남을 때까지 반복하게 된다. 우선, 제일 위에 있는 카드를 바닥에 버린다. 그 다음, 제일 위에 있는 카드를 제일 아래에 있는 카드 밑으로 옮긴다. 예를 들어 N=4인 경우를 생각해 보자. 카드는 제일 위에서부터 1234 의 순서로 놓여있다. 1을 버리면 234가 남는다. 여기서 2를 제일 아래로 옮기면 342가 된다. 3을 버리면 42가 되고, 4를 밑으로 옮기면 24가 된다. 마지막으로 2를 버리고 나면, 버린 카드들은 순서대로 1 3 2가 되고, 남는 카드는 4가 된다...

    [백준][파이썬] 10845번 큐

    10845번 : 큐(queue) 문제 정수를 저장하는 큐를 구현한 다음, 입력으로 주어지는 명령을 처리하는 프로그램을 작성하시오. 명령은 총 여섯 가지이다. push X: 정수 X를 큐에 넣는 연산이다. pop: 큐에서 가장 앞에 있는 정수를 빼고, 그 수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다. size: 큐에 들어있는 정수의 개수를 출력한다. empty: 큐가 비어있으면 1, 아니면 0을 출력한다. front: 큐의 가장 앞에 있는 정수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다. back: 큐의 가장 뒤에 있는 정수를 출력한다. 만약 큐에 들어있는 정수가 없는 경우에는 -1을 출력한다. 입력 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ ..

    [알고리즘][파이썬] 큐, 스택 / queue, stack

    CS 자료구조 중 가장가장 기본적이고 가장가장 쉬운 것.. 고마워 올해 1학기에 자료구조 수업을 들었는데.. 내가 알던 CS 세계는 작고도 작았구나를 깨우쳐 준 과목이었다.. 아무튼 레쮸고 큐와 스택 (queue&stack) 자료구조의 한 종류 ( 자료구조 : 데이터를 표현하고 관리하고 처리하기 위한 구조 ) 자료를 일렬로 보관 자료를 넣는 동작 & 자료를 빼는 동작 가능 삽입(push), 삭제(pop) 함수로 구성 오버플로와 언더플로도 같이 고민 필요 오버플로 : 특정 자료구조가 수용할 수 있는 데이터의 크기가 이미 가득 찬 상태에서 삽입 연산 수행 시 발생 언더플로 : 자료구조에 데이터가 없는 상태에서 삭제 연산 수행 시 발생 큐 (queue) 작업들이 처리되기 전에 대기 중인 선형 리스트 자료 구조..

    [알고리즘] 알고리즘 스터디 계획 / Algorithm Study Plan

    대망의첫 자율 스터디.. (학교 수업,동아리 이외) 대망의 첫 티스토리 글.. 진행 방법 목표 : 이것이 취업을 위한 코딩테스트다 with 파이썬 교재 완료 사용 언어 : 파이썬(Python) 커리큘럼 : 스택/큐 > 그리디 > 구현 > DFS/BFS > 정렬 > 이진탐색 > 다이나믹 > 최단경로 > 그래프 일정 : 2023.1 ~ 2023.2 깃헙 레포지토리 : https://github.com/dudrhy12/Algorithm-Study.git GitHub - dudrhy12/Algorithm-Study: [2023 Winter ~ ] Algorithm Study ✏️ [2023 Winter ~ ] Algorithm Study ✏️. Contribute to dudrhy12/Algorithm-Stud..