일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- gold5
- leetcode
- 구현
- LEVEL1
- LEVEL2
- PYTHON
- AWS
- 오류
- 백엔드
- mysql
- error
- 9252
- Gold4
- LCS
- Kakao
- java
- 백준
- CSS
- 개념
- jpa
- 프로그래머스
- glod5
- Thymeleaf
- glod4
- leetcode 69
- 배포
- spring
- siver3
- HTML
- gold2
- Today
- Total
목록분류 전체보기 (105)
이 험난한 세상에서어어~
간단한 소개 다이나믹 프로그래밍이란 단순하게 말해서 이전에 생성한 값을 가져다가 쓰는 것을 의미한다. 예를 들어서 1과 2만을 가지고 N이라는 숫자를 만든다고 생각해보자. 이때 N이 3이라면 '1+1+1', '1+2', '2+1'이라는 경우의 수가 나올 것이다. N이 4라면 어떻게 될까. '1+1+1+1', '1+2+1', '2+1+1', '1+1+2', '2+2'이라는 경우의 수가 나온다. 이렇게 일일히 세줄 수도 있지만 N이 1억일 경우에는 그 연산의 횟수가 너무 커져 시간이 많이 걸린다. 바로 이럴 때 동적 계획을 이용하면 연산 횟수를 줄이면서 빠르게 문제를 해결할 수 있다. 위의 문제를 동적 계획으로 푸는 방법을 소개한다. N = 1 '1' -> 1개 N =2 '1+1', '2' -> 2개 N =..
문제 소개 어피치가 문자열을 압축하려고 한다. 이때 압축하여 표현한 최소의 문자열을 구하여라. 문자열 압축은 특정한 숫자 단위로 맨 앞에서부터 행한다. 예를 들어서 문자열 aabbaccc가 있다고 하자. 이때 1개로 문자열을 압축한다고 하면 2a2ba3c가 될 것이다. 즉, 압축하려는 문자열의 숫자 기준으로 잘랐을 때 해당 문자열이 얼마나 나왔는지를 확인하는 것이다. 또 다른 예를 들어 문자열 ababcdcdababcdcd가 있다고 하자. 해당 문자열을 2개 단위로 압축하면 2ab2cd2ab2cd가 될 수 있다. 그러나 해당 문자열을 4개 단위로 압축한다고 하면 2ababcdcd가 된다. 그러므로 이때가 가장 짧은 문자열이 되고 답은 9가 된다. 문제 풀이 첫 번째 접근 일단 문자열을 나눌 수 있는 최대..
문제 설명 무지가 회전판을 이용해서 먹방을 한다. 한참 먹방을 하던 도중 갑자기 네트워크 장애가 발생했다고 하자. 그렇다면 무지는 네트워크가 다시 정상화 될 때 몇 번째의 음식부터 먹어야 할까? 참고로 말하자면 효율성 테스트가 존재하는 문제다. 더 자세한 설명, https://school.programmers.co.kr/learn/courses/30/lessons/42891?language=python3 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 풀이 첫 번째 접근 처음에는 그냥 큐에 넣고 돌려서 계산하는 방법을 떠올렸다. 그러나 효율성 테스트에..