일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Plotly
- 시각화
- TiL
- parklab
- GNN
- DP
- intern10
- 마이온컴퍼니
- 프로젝트
- Python
- 마이온
- likelion
- 인턴10
- 멋재이사자처럼
- ux·ui디자인
- SQL
- likelionlikelion
- BFS
- folium
- 멋사
- 멋쟁이사자처럼멋쟁이사자처럼
- Join
- pyhton
- GIS
- DFS
- 파이썬
- 그리디
- 알고리즘
- seaborn
- 멋쟁이사자처럼
- Today
- Total
목록DP (10)
지금은마라톤중
이 문제는 2가지 풀이법으로 해결했습니다. 1. 조합 2. DP 1. 조합 문제를 봤을 때 가장 직관적으로 생각났습니다. # 조합으로 풀기 def fac(a): num = 1 for i in range(1,a+1): num *= i return num t = int(input()) for _ in range(t): n,m = map(int,input().split()) res = fac(m)//(fac(n)*fac(m-n)) print(res) 2. DP DP 문제를 풀어보려고 DP 문제 목록에서 골랐기 때문에 DP인걸 알 수 있었습니다. 하지만 문제만 보고 DP라는걸 알아차리는 것이 쉽지 않은 것 같습니다..ㅎㅎ 위 그림처럼 경우의 수가 규칙성을 가졌습니다. 그래서 작은문제로 쪼개어 해결할 수 있었습니..
이번에는 DP(Dynamic Programming, 동적 계획법)에 대해 공부해봤습니다. 원래 BFS와 DFS를 했으니 다른 그래프 이론들을 공부하려다가 코테에 잘 나오는거 먼저 하자!! 해서 순서가 좀 바뀌었습니다 ㅎㅎ DP(Dynamic Programming, 동적 계획법) : 복잡한 문제를 효율적으로 해결하기 위한 알고리즘 설계 기법 중 하나입니다. 이 방법은 주로 최적화 문제를 해결하는 데 사용되며, 큰 문제를 작은 부분 문제로 나누어 해결한 후, 그 결과를 저장해두고 필요할 때 다시 사용(메모이제이션)함으로써 계산의 중복을 피하는 것이 핵심 전략입니다. 동적 계획법은 문제를 분할하여 각각의 작은 문제들을 한 번씩만 풀어 큰 문제의 해답을 구하는 방식으로, 불필요한 계산을 줄이고 효율성을 높입니다..