일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 알고리즘
- rnn
- github
- NaverAItech
- vscode
- GIT
- torchserve
- GCP
- python
- pep8
- NLP
- autoencoder
- 완전탐색
- datascience
- pytorch
- docker
- FastAPI
- PytorchLightning
- 코딩테스트
- 프로그래머스
- 네이버AItech
- Kaggle
- Matplotlib
- GitHub Action
- Kubernetes
- DeepLearning
- leetcode
- wandb
- 백준
- FDS
- Today
- Total
목록알고리즘 (51)
Sangmun
https://school.programmers.co.kr/learn/courses/30/lessons/118668 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 주어지는 알고력과 코딩력의 범위가 0 ~ 150으로 범위가 작기 때문에 완전탐색이 가능할 것 같았으나 완전탐색으로 어떻게 접근해야할지도 모르겠고 어차피 시간초과가 나게 되어있다. DP로 풀어야하는 문제이며 DP로 풀어야겠다고 생각이 든 순간 굉장히 문제가 쉬워진다. 한가지 주의점은 주어진 문제들보다 애초에 알고력 또는 코딩력이 높은 경우의 수인데 이러한 경우의 수를 생각하지 못해서 꽤나 시간을 ..
https://leetcode.com/problems/validate-stack-sequences/ Validate Stack Sequences - LeetCode Can you solve this real interview question? Validate Stack Sequences - Given two integer arrays pushed and popped each with distinct values, return true if this could have been the result of a sequence of push and pop operations on an initially empty stack leetcode.com class Solution: def validateStackSeq..
https://school.programmers.co.kr/learn/courses/30/lessons/81303 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 뭔가 잘 푼 풀이같지는 않지만 그래도 한번에 풀어서 블로그에 올려본다. 선택된 행을 기준으로 위아래로만 움직이며 주어지는 모든 케이스에서 전체 범위를 벗어나는 케이스는 없다는 조건이 있음으로 deque를 사용해도 될 것 같았으나 삭제한 행을 다시 복구하는 과정에서 순서를 맞춰줘야한다는 조건이 있음으로 heap을 사용해서 풀었다. 주의해야할 점은 아래와 같다. * 삭제되었다가 복구된 행은 다시 순서..
https://school.programmers.co.kr/learn/courses/30/lessons/17676?language=python3 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 프로그래머스에서 Level3로 분류된 문제이지만 굉장히 쉽다 중간의 까다로운 구현과정과 곂치는 구간에 대한 판단에서 실수가 있다면 헤멜수도 있을것 같다. 중요포인트는 아래와 같다. * python timedelta를 이용하여 시간에 대한 계산을 간편하게 하기 * 트래픽이 곂치는 조건을 명확하게 파악하기 * 입력의 총 길이가 2000이 최대임으로 이중 for문 즉 완전..
https://school.programmers.co.kr/learn/courses/30/lessons/42890 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 카카오 코딩테스트의 문제 특성상 Level2의 문제는 탐색 공간이 크지 않아 완전탐색으로 간단하게 해결이 가능하지만 세부적인 구현사항에서는 나름 시간을 요구하는 구현사항이 필요하다. * combination으로 모든 column의 조합을 구하기 * set을 이용해서 unique한 특성을 가졌는지 체크하기 * 이미 구해진 후보키들과 비교해서 minimality한지 체크하기 from itertools..
이분탐색을 활용하여 해결이 가능한 문제이다. def solution(stones, k): min_value = min(stones) max_value = max(stones) result = [] while min_value
https://school.programmers.co.kr/learn/courses/30/lessons/154540 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 간단한 dfs, bfs 문제이며 나는 dfs로 풀었다. 주어지는 탐색공간의 크기가 작아서 recursionlimit에 안 걸릴 줄 알았건만 recursion limit 때문에 오류가 발생한 지도 모르고 잠깐 고생했었다. 문제를 dfs로 푼다면 recursionlimit을 설정해 주는 것을 까먹지 말자 import sys sys.setrecursionlimit(1000000) idx = [[0,1..
https://www.acmicpc.net/problem/1495 1495번: 기타리스트 첫째 줄에 N, S, M이 주어진다. (1 ≤ N ≤ 50, 1 ≤ M ≤ 1,000, 0 ≤ S ≤ M) 둘째 줄에는 각 곡이 시작하기 전에 줄 수 있는 볼륨의 차이가 주어진다. 이 값은 1보다 크거나 같고, M보다 작거나 같다. www.acmicpc.net 다이나믹 프로그래밍으로 해결이 가능한 문제이며 또한 탐색해야되는 범위가 적기 때문에 2중 for문으로도 해결이 가능한 문제이다. 볼륨을 변경해야하는 단계마다 어떠한 볼륨으로 변경이 가능한지를 dp matrix에 저장을 해놓고 모든 경우의 수를 계산하해주면 된다. 문제의 예제 1번은 3 5 10 5 3 7 아래와 같은 형태로 dp matrix의 이전의 상태를 기..