您的位置:首页 > 其它

偶数求和

2015-07-27 11:21 246 查看
[align=left]Problem Description[/align]
有一个长度为n(n<=100)的数列,该数列定义为从2开始的递增有序偶数,现在要求你按照顺序每m个数求出一个平均值,如果最后不足m个,则以实际数量求平均值。编程输出该平均值序列。
 

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

 

[align=left]Output[/align]
对于每组输入数据,输出一个平均值序列,每组输出占一行。

 

[align=left]Sample Input[/align]

3 2
4 2

 

[align=left]Sample Output[/align]

3 6
3 7本题是一道水题,但是我用的数学方法,找数列的规律,前n项和公式,每m项平均数的规律,m+1,3m+1,5m+1,7m+1,往后一直延伸。以下是我写的代码。#include<stdio.h>
int main()
{
 int n,m,i,j;
 while(scanf("%d%d",&n,&m)!=EOF)
 {
 if(n<=m)
 printf("%d\n",n+1);
 else
  {
 
   for(i=1;i<=n/m;i++)
    {
     printf("%d",(2*i-1)*m+1);
     if(i!=n/m)
     printf(" "); 
    }
   if(n%m>0)
   printf(" %d\n",2*n-n%m+1);
   else
   printf("\n");
  }
 
 
 } 
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: