求平均值问题201308031210.txt

Problem D
Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/32768K (Java/Other)
Total Submission(s) : 103   Accepted Submission(s) : 38
Font: Times New Roman | Verdana | Georgia
Font Size: ← →
Problem Description
有一个长度为n(n<=100)的数列,该数列定义为从2开始的递增有序偶数,现在要求你按照顺序每m个数求出一个平均值,如果最后不足m个,则以实际数量求平均值。编程输出该平均值序列。
Input
输入数据有多组,每组占一行,包含两个正整数n和m,n和m的含义如上所述。

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

Sample Input
3 2
4 2
Sample Output
3 6
3 7

#include <stdio.h>
int main()
{
 int a,b,j,n,m,l,i,s,k;
  while(scanf("%d%d",&n,&m)!=EOF) 
  {
   j=1;
   a=0;
   while(n>=m)
   {
    s=0;
    i=1;
    for(k=j;i<=m;j++)
       {s=s+2*j;
        i++;}
       n-=m;
       //k+=m;
       b=s/m;
       printf(a++?"% d":"%d",b);
   }
   if(n<m&&n==0)
   {printf(" ");}
   if(n<m&&n!=0)
     {
      s=0;
      for(i=1,l=j;i<=n;l++)
        {s=s+2*l;
         i++;}
        b=s/n;
        printf(a++?"% d ":"%d ",b);
     }
  }
  return 0;
}