일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 |
- nodejs
- dfs
- mongoose
- Express
- nestjs
- 게임
- 자료구조
- GIT
- cookie
- Bull
- jest
- Nest.js
- 공룡게임
- JavaScript
- AWS
- typeORM
- 정렬
- OCR
- react
- Dinosaur
- flask
- class
- Queue
- MySQL
- MongoDB
- Python
- game
- TypeScript
- Sequelize
- Today
- Total
목록자료구조알고리즘 (128)
포시코딩
문제 https://www.acmicpc.net/problem/1074 1074번: Z 한수는 크기가 2N × 2N인 2차원 배열을 Z모양으로 탐색하려고 한다. 예를 들어, 2×2배열을 왼쪽 위칸, 오른쪽 위칸, 왼쪽 아래칸, 오른쪽 아래칸 순서대로 방문하면 Z모양이다. N > 1인 경우, 배열을 www.acmicpc.net 코드 N, r, c = map(int, input().split()) def z(n, x, y): global result if n == 2: if x == r and y == c: print(result) return result += 1 if x == r and y+1 == c: print(result) return result += 1 if x+1 == r and y == c:..
개요 재귀 호출 시 반복되는 작업에 대한 결과를 계속 반복 수행하는게 아닌 따로 저장해놓고(캐싱) 갖다 쓰는 방법을 다이나믹 프로그래밍이라 한다. 문제 https://www.acmicpc.net/problem/2747 2747번: 피보나치 수 피보나치 수는 0과 1로 시작한다. 0번째 피보나치 수는 0이고, 1번째 피보나치 수는 1이다. 그 다음 2번째 부터는 바로 앞 두 피보나치 수의 합이 된다. 이를 식으로 써보면 Fn = Fn-1 + Fn-2 (n ≥ 2)가 www.acmicpc.net 한 예로 위 문제에 대해 재귀 함수를 사용한다면 금방 제시되는 입/출력을 구현해낼 수 있을 것이다. 하지만 그대로 코드를 제출하면 시간 초과가 나온다. 코드 1 n = int(input()) def recursio..
https://www.acmicpc.net/problem/9663 9663번: N-Queen N-Queen 문제는 크기가 N × N인 체스판 위에 퀸 N개를 서로 공격할 수 없게 놓는 문제이다. N이 주어졌을 때, 퀸을 놓는 방법의 수를 구하는 프로그램을 작성하시오. www.acmicpc.net https://www.acmicpc.net/problem/1987 1987번: 알파벳 세로 R칸, 가로 C칸으로 된 표 모양의 보드가 있다. 보드의 각 칸에는 대문자 알파벳이 하나씩 적혀 있고, 좌측 상단 칸 (1행 1열) 에는 말이 놓여 있다. 말은 상하좌우로 인접한 네 칸 중의 한 칸으 www.acmicpc.net https://www.acmicpc.net/problem/1759 1759번: 암호 만들기 첫째..
https://www.acmicpc.net/problem/1260 1260번: DFS와 BFS 첫째 줄에 정점의 개수 N(1 ≤ N ≤ 1,000), 간선의 개수 M(1 ≤ M ≤ 10,000), 탐색을 시작할 정점의 번호 V가 주어진다. 다음 M개의 줄에는 간선이 연결하는 두 정점의 번호가 주어진다. 어떤 두 정점 사 www.acmicpc.net https://www.acmicpc.net/problem/1012 1012번: 유기농 배추 차세대 영농인 한나는 강원도 고랭지에서 유기농 배추를 재배하기로 하였다. 농약을 쓰지 않고 배추를 재배하려면 배추를 해충으로부터 보호하는 것이 중요하기 때문에, 한나는 해충 방지에 www.acmicpc.net https://www.acmicpc.net/problem/16..
개요 https://4sii.tistory.com/517 그래프 - DFS 구현 DFS 알고리즘 구현 스택, 큐 자료구조 활용 need_visit stack visited queue * BFS 자료구조는 두 개의 큐를 활용하는데 반해, DFS는 스택과 큐를 활용한다는 차이가 있다. 개념 위 그래프에 대해 DFS를 구현한 4sii.tistory.com 위 내용과 이어진다. 이전에는 알파벳으로 된 노드들로 DFS하는 방법을 알아봤는데 이번엔 숫자로 이루어진 DFS 알고리즘을 알아볼 것이다. 특히, 각 노드들에 대해 작은 순서부터 진행한다는 큰 특징이 있는데 코딩테스트에서 DFS를 번호가 낮은 순서부터 처리하도록 명시하는 경우가 종종 있기 때문에 해당 방법에 대해 알고 있는 것은 중요하다고 볼 수 있다. 코드..
문제 NxN 격자판이 주어지며, 격자판의 각 칸에는 숫자가 적혀있습니다. 격자판의 정중앙에서 출발하여, 상하좌우로 이동하며 같은 테두리 안과 그 바깥 테두리 방향으로 이동할 수 있습니다. 이때, 정중앙으로 돌아올 수 없습니다. 이동하며 밟은 칸의 숫자를 모두 더해 최소값이 되는 값을 구하세요. 입력: N (3 ≤ N ≤ 1000, N은 홀수) board : NxN 크기의 격자판을 1차원 리스트로 표현한 것으로, 길이는 N^2입니다. 각 칸에 있는 숫자는 0 이상 9 이하입니다. 출력: 격자판의 정중앙에서 상하좌우로 이동하며 밟은 칸의 숫자를 모두 더해 최소값이 되는 값을 출력합니다. 입력 예시: N = 5 board = [9, 3, 9, 9, 9, 5, 2, 7, 8, 9, 8, 1, 5, 8, 9, 6..
문제 https://school.programmers.co.kr/learn/courses/30/lessons/43165 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 내 풀이 def solution(numbers, target): # 출력: target이 되는 방법의 수 # 조건: # 2
문제 [자식폴더, 부모폴더]의 폴더구조에 대한 리스트 folders, [파일이름, 파일크기, 속한폴더이름]의 파일 속성에 대한 리스트 files, 확인할 폴더 목록을 담은 리스트 selected, 확인하지 않을 파일 목록을 담은 리스트 excepted 이렇게 네 개의 파라미터가 주어질 때, 확인할 파일들에 대해 [확인해야 할 파일의 크기(단위 제외), 파일 개수] 의 형태로 반환하시오. 단, 파일 크기는 B 단위로 변환되어야 합니다. 예시 1) folders = [['animal', 'root'], ['fruit', 'root']] files = [['cat', '1B', 'animal'], ['dog', '2B', 'animal'], ['apple', '4B', 'fruit']] selected = [..

문제 문제: 주어진 정수 배열 arr에서, 등차수열을 이루는 가장 긴 연속된 부분 배열의 길이를 찾으세요. (2

문제 https://www.acmicpc.net/problem/10989 10989번: 수 정렬하기 3 첫째 줄에 수의 개수 N(1 ≤ N ≤ 10,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 10,000보다 작거나 같은 자연수이다. www.acmicpc.net 난이도 보고 덤볐다가 백준의 매운맛을 3일동안 제대로 맛 본 문제 시간, 메모리 제한 쪽으로 너무 깐깐해서 두손 두발 다 들었다. 그 덕분에 버블, 삽입, 선택, 퀵, 병합 정렬만 알던 내가 계수 정렬 까지 알게 됐으니 고마운 문제기도 하다. 내 풀이 N = int(input()) arr = [] for _ in range(N): arr.append(int(input())) count = [0] * (max(..