mirror of
https://git.wolves.top/wolves/leetcode.git
synced 2025-11-04 17:26:32 +08:00
26 lines
593 B
C
26 lines
593 B
C
static int max(int a, int b) {
|
|
return a > b ? a : b;
|
|
}
|
|
|
|
static int min(int a, int b) {
|
|
return a < b ? a : b;
|
|
}
|
|
|
|
int storeWater(int* bucket, int bucketSize, int* vat, int vatSize) {
|
|
int maxk = 0;
|
|
for (int i = 0; i < vatSize; i++) {
|
|
maxk = max(maxk, vat[i]);
|
|
}
|
|
if (maxk == 0) {
|
|
return 0;
|
|
}
|
|
int res = INT_MAX;
|
|
for (int k = 1; k <= maxk && k < res; ++k) {
|
|
int t = 0;
|
|
for (int i = 0; i < bucketSize; ++i) {
|
|
t += max(0, (vat[i] + k - 1) / k - bucket[i]);
|
|
}
|
|
res = min(res, t + k);
|
|
}
|
|
return res;
|
|
} |