일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 백준
- c언어 기본
- 파이썬 알고리즘 인터뷰
- 코딩테스트
- 도커
- Git
- 인텔리제이
- 운체 1주차
- git 오류
- python자료형
- 최단거리
- 그리디
- python기본
- 인스타
- Workbench
- git기초
- python기초
- DP
- c언어
- 코테
- #코린이 #코딩 #할 수 있다
- c언어 제어문
- 데베시 1주차
- 자료구조
- git오류
- 스택
- 5장
- 참고X
- 4장
- 1주차(1)
- Today
- Total
목록DP (4)
하루살이 개발자
1. 다이나믹 프로그래밍(동적 계획법) - 메모리를 적절히 사용하여 수행 시간 효율성을 비약적으로 향상시키는 방법 - 이미 계산된 결과(작은 문제)는 별도의 메모리 영역에 저장하여 다시 계산하지 않도록 한다. - 다이나믹 프로그래밍의 구현은 일반적으로 두 가지 방식(탑다운, 보텀업) * 탑다운(하향식-위에서부터 아래려) 보텀업(상향식-아래에서부터 위로) * 자료구조에서 동적할당이란? 프로그램이 실행되는 도중에 실행에 필요한 메모리를 할당하는 기법을 의미한다. 2. 다이나믹 프로그래밍 사용 문제 1) 최적 부분 구조 - 큰 문제를 작은 문제로 나눌 수 있으며 작은 문제의 답을 모아 큰 문제를 해결할 수 있다. 2) 중복되는 부분 문제 - 동일한 작은 문제를 반복적으로 해결해야 한다. 3. 대표 예제 피보나..
코딩테스트 연습 3일차 거스름돈 문제입니다. 문제링크: https://www.acmicpc.net/problem/14916 14916번: 거스름돈 첫째 줄에 거스름돈 액수 n(1 ≤ n ≤ 100,000)이 주어진다. www.acmicpc.net Solution n = int(input()) result = 0 while n >= 0: if n % 5 == 0: #5의 배수이면 result += (n//5) print(result) break n -= 2 result += 1 #2원짜리 동전개수 증가 else: print(-1) 참고 설탕배달 문제와 거의 똑같다. https://thrainer.tistory.com/23?category=1007146 [BaekJoon 2839번] 설탕배달 문제(Pytho..