4 条题解
-
1
这有点像是前缀和啊,但却不在前缀和的分类中,不过还是一如既往的简单
已AC,请放心食用
#include <bits/stdc++.h> using namespace std; int main() { double n, m, a[105], avg = 0, maxx = 0; cin >> n >> m; for (int i = 1; i <= n; i++) { cin >> a[i]; } for (int i = 1; i <= n - 2; i++) { avg = 0; for (int j = i; j <= i + 2; j++) { avg += a[j]; } avg /= m; if (avg > maxx) { maxx = avg; } } cout << fixed << setprecision(2) << maxx; return 0; }
-
0
#include<bits/stdc++.h> using namespace std; /* 求从每个数开始连续m个数的和,打擂台求最大, 再求平均。 */ int a[110]; int main() { int n, m; cin >> n >> m; for(int i = 1; i <= n; i++){ cin >> a[i]; } //求从每个数开始连续m个数的和, //最多循环到倒数第m个数才能保证有m个数 int s; int ma = 0;//最大的和 for(int i = 1; i <= n-m+1; i++){ //求连续m个数的和 s = 0; for(int j = i; j <= i+m-1; j++){ s += a[j]; } if(s > ma) ma = s; } cout << fixed << setprecision(2) << 1.0 * ma / m; return 0; }
-
0
很简单
#include <bits/stdc++.h> using namespace std; int main() { int n,m,a[9999]; double max=0,sum=0;; cin >> n >> m; for(int i=0;i<n;i++) { cin >> a[i]; } for(int i=0;i<=n-3;i++) { for(int j=0;j<m;j++) { sum+=a[i+j]; } if(sum/m>max) { max=sum/m; } sum=0; } cout << fixed << setprecision(2); cout << max; }
- 1
信息
- ID
- 165
- 时间
- 1000ms
- 内存
- 64MiB
- 难度
- 1
- 标签
- 递交数
- 69
- 已通过
- 55
- 上传者