Pagini recente » Cod sursa (job #1689146) | Cod sursa (job #64808) | Cod sursa (job #2153173) | Cod sursa (job #1882661) | Cod sursa (job #3174860)
#include <fstream>
#include <algorithm>
using namespace std;
ifstream cin("transport.in");
ofstream cout("transport.out");
const int MAX_N = 16000;
int main() {
int N, K;
cin >> N >> K;
int volume[MAX_N];
for (int i = 0; i < N; ++i) {
cin >> volume[i];
}
sort(volume, volume + N);
int capacitate_minima = 0;
int transporturi_efectuate = 0;
for (int i = N - 1; i >= 0; --i) {
capacitate_minima += volume[i];
if (capacitate_minima >= K) {
transporturi_efectuate++;
capacitate_minima = 0;
}
}
if (capacitate_minima > 0) {
transporturi_efectuate++;
}
cout << transporturi_efectuate << endl;
return 0;
}