1181: 零起点学算法88——偶数求和(*)

我不是女神ヾ 2022-10-24 06:12 298阅读 0赞

Description

有一个长度为n(n<=100)的数列,该数列定义为从2开始的递增有序偶数,现在要求你按照顺序每m个数求出一个平均值,如果最后不足m个,则以实际数量求平均值。编程输出该平均值序列。

Input

输入数据有多组,每组占一行,包含两个正整数n和m,n和m的含义如上所述。

Output

对于每组输入数据,输出一个平均值序列,每组输出占一行。

" class="reference-link">Sample Input 5f8f312f51791b8bb0ed0ae07c2ffa43.gif

  1. 3 2
  2. 4 2

Sample Output

  1. 3 6
  2. 3 7

Source

零起点学算法

Code

  1. #include<iostream>
  2. #include<stdio.h>
  3. #include<string.h>
  4. using namespace std;
  5. int main()
  6. {
  7. int n,m;
  8. while(~scanf("%d%d",&n,&m))
  9. {
  10. int a[100];
  11. a[0]=2;
  12. ///构建偶数数列
  13. for(int i=1;i<n;i++)
  14. a[i]=a[i-1]+2;
  15. int t=0;
  16. int sum;
  17. int i=0;
  18. ///按照个数m分组
  19. for(i=0;i+m<n;i=i+m)
  20. {
  21. sum=0;
  22. for(int j=0;j<m;j++)
  23. {
  24. sum+=a[i+j];
  25. }
  26. cout<<sum/m<<" ";
  27. }
  28. int num=0;
  29. sum=0;
  30. ///不足m个的
  31. for(;i<n;i++)
  32. {
  33. num++;
  34. sum+=a[i];
  35. }
  36. cout<<sum/num<<endl;
  37. }
  38. }

注意!!!sum一定要在循环里面重新赋值为0

发表评论

表情:
评论列表 (有 0 条评论,298人围观)

还没有评论,来说两句吧...

相关阅读