#include <iostream>
#include <cstdio>
#include <vector>
using namespace std;
int main(){
int n;
cin >> n;
vector<int> f(n+1), s(n+1);
for (int i = 0; i < n; i++) cin >> f[i];
for (int i = 0; i < n; i++){
if (i == 0) s[i] = (f[i]+f[i+1])/2;
else if (i == n-1) s[i] = (f[i-1]+f[i])/2;
else s[i] = (f[i-1]+f[i]+f[i+1])/3;
}
cout << s[0];
for (int i = 1; i < n; i++) cout << " " << s[i];
return 0;
}
【CSP】201809-1 卖菜 模拟
最新推荐文章于 2023-03-06 21:07:37 发布
这篇博客介绍了如何使用C++编程计算给定数组f的动态中位数,通过for循环处理边界情况并使用三数求中来计算元素的平均值和中位数。从输入整数n开始,逐个读取f数组,并在最后输出结果`s[0]`和其余元素。
摘要由CSDN通过智能技术生成