Problem Description 有一个长度为n(n<=100)的数列,该数列定义为从2开始的递增有序偶数,现在要求你按照顺序每m个数求出一个平均值,如果最后不足m个,则以实际数量求平均值。编程输出该平均值序列。
Input 输入数据有多组,每组占一行,包含两个正整数n和m,n和m的含义如上所述。
Output 对于每组输入数据,输出一个平均值序列,每组输出占一行。
Sample Input3 2
4 2
Sample Output3 6
3 7
#include"iostream"
using namespace std;
int main()
{
int n,m,b,c,sum,ave,a[100],k=0;
while(cin>>n>>m)
{
sum=0;ave=0;
for(int i=0;i<n;i++)
a[i]=2*i+2;
b=n/m;c=n%m;
for(int i=0;i<b;i++)
{
for(int j=i*m;j<i*m+m;j++)
{sum=sum+a[j];}
ave=sum/m;
cout<<ave;
if(i!=b-1)
cout<<" ";
sum=0;
}
if(c!=0)
{
cout<<" ";
for(int i=n-c,j=1;i<n;i++,j++)
{sum=sum+a[n-j];}
ave=sum/c;
cout<<ave<<endl;
}
else
cout<<endl;
}
return 0;
}