Giả sử chúng ta có hai số n và s. Chúng ta phải tìm giá trị trung bình lớn nhất có thể có của một mảng n phần tử không âm, sao cho tổng các phần tử bằng s.
Vì vậy, nếu đầu vào giống như n =3; s =5, thì đầu ra sẽ là 2, vì đối với mảng [1, 2, 2], tổng là 5 và trung vị là 2.
Các bước
Để giải quyết vấn đề này, chúng tôi sẽ làm theo các bước sau -
m := floor of (n / 2) + 1 return floor of (s / m)
Ví dụ
Hãy cùng chúng tôi xem cách triển khai sau để hiểu rõ hơn -
#include <bits/stdc++.h>
using namespace std;
int solve(int n, int s) {
int m = n / 2 + 1;
return s / m;
}
int main() {
int n = 3;
int s = 5;
cout << solve(n, s) << endl;
} Đầu vào
3, 5
Đầu ra
2