当前位置: 代码迷 >> 综合 >> 2015偶数求和
  详细解决方案

2015偶数求和

热度:23   发布时间:2023-10-09 19:58:30.0

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 73825    Accepted Submission(s): 31431


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<iostream>
#include<stdio.h>
using namespace std;int main(){int n,m;int num[100];num[0] = 2;for(int i=1 ;i<100;i++){num[i] = num[i-1]+2;}while(scanf("%d%d",&n,&m)!=EOF){int sum = 0;int o = 2;bool flag = false;if(n%m==0){for(int i=1 ;i<=n ;i++){sum += num[i-1];if(i%m==0){if(!flag){printf("%d",sum/m);}else{printf(" %d",sum/m);}sum =0;flag = true;}}printf("\n");}else{for(int i=1 ;i<=n-n%m ;i++){sum += num[i-1];if(i%m==0){if(!flag){printf("%d",sum/m);}else{printf(" %d",sum/m);}sum = 0;flag = true;}}for(int i=n-n%m+1 ;i<=n ;i++){sum += num[i-1];}printf(" %d\n",sum/(n%m));}}return 0;
}



  相关解决方案