백준 s2 16401 과자 나눠주기 c++
https://www.acmicpc.net/problem/16401 16401번: 과자 나눠주기 첫째 줄에 조카의 수 M (1 ≤ M ≤ 1,000,000), 과자의 수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에 과자 N개의 길이 L1, L2, ..., LN이 공백으로 구분되어 주어진다. 과자의 길이는 (1 ≤ L1, L2, ..., LN ≤ 1, www.acmicpc.net 문제 설명과 풀이는 https://kyj0032.tistory.com/52 참고, 거의 유사함. 다만 랜선 자르기 문제는 불가능한 경우의 수가 없었지만, 이 문제는 0을 출력해야 함. 단, 모든 조카에게 같은 길이의 막대과자를 나눠줄 수 없다면, 0을 출력한다. 코드 /*boj s2 16401 과자 나눠주기*/ ..
2024. 2. 17.
백준 g4 2295 세 수의 합 c++
https://www.acmicpc.net/problem/2295 2295번: 세 수의 합 우리가 x번째 수, y번째 수, z번째 수를 더해서 k번째 수를 만들었다라고 하자. 위의 예제에서 2+3+5=10의 경우는 x, y, z, k가 차례로 1, 2, 3, 4가 되며, 최적해의 경우는 2, 3, 4, 5가 된다. k번째 수가 최 www.acmicpc.net 문제 N개의 수로 이루어진 집합 U가 있을 때, 각 원소 a, b, c, k를 골랐을 때 a + b + c = k 를 만족하는 최대 k 구하기 집합이므로 각 원소는 중복되지 않으나, a b c 는 서로 같아도 된다. 풀이 1. O(N^3*logN) 풀이 1) 세 원소를 고른다. 1000C3 -> N^3 2) 고른 세 원소의 합이 존재하는지 binar..
2024. 2. 16.