목록C++ (122)
정화 코딩

https://www.acmicpc.net/problem/11501 #include #include #include using namespace std;int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int t; cin >> t; while (t--) { int n; cin >> n; vector a(n); for (int i = 0; i > a[i]; vector b(n); for (int i = 0; i = 0; i--) { if (a[i] >= a[idx]) idx = i; b[i]..

https://www.acmicpc.net/problem/7774 #include #include #include using namespace std;int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n, m; cin >> n >> m; vector mul1(n); vector mul2(m); for (int i = 0; i > mul1[i]; // a 플러그 -> b 콘센트 for (int i = 0; i > mul2[i]; // b 플러그 -> a 콘센트 sort(mul1.begin(), mul1.end()); sort(mul2.begin(), mul2.end())..

https://www.acmicpc.net/problem/11779 #include #include #include using namespace std;int MAX_SIZE = 1000000000;int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n, m; cin >> n >> m; vector>> g(n + 1); vector dst(n + 1, MAX_SIZE); vector route(n + 1); for (int i = 0; i > a >> b >> c; g[a].emplace_back(b, c); } int s, e; cin >> s >> ..

https://www.acmicpc.net/problem/1024 #include #include using namespace std;int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n, l; cin >> n >> l; for (int k = l; k = 0 && tmp % 2 == 0) { int a = tmp / 2; for (int i = 0; i 길이가 100 이하인 수열에서만 찾으면 되므로 가능한 모든 수열의 길이에 대해서 연속 수열을 찾아보면 된다.식을 정리하면 다음과 같다. 주의할 점은, 음이 아닌 정수 리스트여야 하므로 tmp >= 0을 체..

https://www.acmicpc.net/problem/11054 #include #include using namespace std;int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n; cin >> n; vector a(n); for (int i = 0; i > a[i]; vector dp1(n); vector dp2(n); for (int i = 0; i a[j]) maxt = max(maxt, dp1[j]); } dp1[i] = maxt + 1; } for (int i = n - 1; i >= 0; i--) { in..

https://www.acmicpc.net/problem/32649 #include #include using namespace std;int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); int a, b, k; cin >> a >> b >> k; vector ans; ans.push_back(a); ans.push_back(b); for (int i = a + 1; i = k) { for (int i = 0; i 캐어려운 정수론 문제인줄 알았는데 그냥 브루트포스 문제였다 ㅎㅎ;;핵심 포인트는 d는 A의 배수이면서 B의 약수여야 한다는 것이다. 그런데 A와 B의 범위가 그렇게 ..

https://www.acmicpc.net/problem/1359 #include #include using namespace std;int main() { ios_base::sync_with_stdio(0); cin.tie(0); cout.tie(0); long long f[11]; f[0] = 1; for (int i = 1; i > n >> m >> k; cout.precision(10); int ans = 0; for (int i = k; i 수식은 아래와 같다.시그마 안에 있는 식을 정리하면 아래와 같다.그런데 아래와 같이 구현하면 WA를 받게 된다.for (int i = k; i 답을 이렇게 계산하면 8 7 1 를 입력했을 때 1.02290799..
9회차 - dp 피보나치 수 2https://www.acmicpc.net/problem/2748피보나치 수를 구하는 걸 재귀로 구현하게 되면 시간 복잡도가 O(2^n)이므로 n이 조금만 커져도 실행 시간이 기하급수적으로 늘어나게 됩니다. 이는 같은 피보나치 값을 여러 번 중복 계산하기 때문입니다. 예를 들어, fib(5)를 계산할 때 fib(3)이 두 번, fib(2)가 세 번 호출되는 식으로 불필요한 연산이 계속 발생합니다.따라서 중복 계산을 막기 위해 이전에 계산한 값들을 저장하고 활용해야 합니다. 이럴 때 사용하는 대표적인 방법이 동적 계획법(DP)를 사용하게 되는 것입니다.#include #include using namespace std;int main() { ios_base::sync_..