알고리즘, PS, 문제풀기등/5) 패러다임(백트래킹, DP, 분할 정복, 분기, 그리디, 최소 신장)2 BF(일반) - 기초(1) BF에서 재귀를 쓰는 이유는 그냥 for문 중첩으로 풀기에는 for문이 너무 많아져서 그렇다 2309번: 일곱 난쟁이 (acmicpc.net) 2309번: 일곱 난쟁이 아홉 개의 줄에 걸쳐 난쟁이들의 키가 주어진다. 주어지는 키는 100을 넘지 않는 자연수이며, 아홉 난쟁이의 키는 모두 다르며, 가능한 정답이 여러 가지인 경우에는 아무거나 출력한다. www.acmicpc.net #include #include #include #include #include using namespace std; const int ans = 100; int main(void) { freopen("input.txt", "r", stdin); ios_base::sync_with_stdio(false); cin.tie(nullp.. 2023. 1. 3. DP - 기초(1) https://www.acmicpc.net/problem/1463 1463번: 1로 만들기 첫째 줄에 1보다 크거나 같고, 106보다 작거나 같은 정수 N이 주어진다. www.acmicpc.net 가장 기초적인 1로 만들기 문제이다. DP의 탑 다운 방식으로 생각해서 문제를 풀 수 있다는 장점이 있다. 패러다임 관련 #include #include #include #include #include #define ll long long using namespace std; int d[1000001]; int main(void) { // freopen("input.txt", "r", stdin); ios_base::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nu.. 2023. 1. 2. 이전 1 다음