728x90
반응형
https://www.acmicpc.net/problem/2512
2512번: 예산
첫째 줄에는 지방의 수를 의미하는 정수 N이 주어진다. N은 3 이상 10,000 이하이다. 다음 줄에는 각 지방의 예산요청을 표현하는 N개의 정수가 빈칸을 사이에 두고 주어진다. 이 값들은 모두 1 이상
www.acmicpc.net
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int N, Num;
vector<int> v;
int main()
{
ios_base::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
cin >> N;
for (int i = 0, j; i < N; ++i)
{
cin >> j;
v.push_back(j);
}
cin >> Num;
sort(v.begin(), v.end());
int left = 1, right = v[v.size() - 1];
while (left <= right)
{
int mid = (left + right) / 2, temp = 0;
for (const auto& i : v)
{
if (i - mid > 0) temp += mid;
else temp += i;
}
if (Num < temp) right = mid - 1;
else if (Num >= temp) left = mid + 1;
}
cout << right << "\n";
}
728x90
반응형
'📕알고리즘 문제 > 📝Baekjoon' 카테고리의 다른 글
[백준] 실버1 : (11659) 구간 합 구하기 5 (0) | 2024.10.03 |
---|---|
[백준] 실버1 : (1932) 정수 삼각형 (0) | 2024.04.18 |
[백준] 골드4 : (1504) 특정한 최단 경로 (0) | 2024.04.15 |
[백준] 골드3 : (1238) 파티 (0) | 2024.04.12 |
[백준] 실버2 : (11724) 연결 요소의 개수 (0) | 2024.04.11 |