偶数求和
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 34019 Accepted Submission(s): 14740
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 7package hdu2015; import java.io.BufferedInputStream; import java.util.Scanner; public class Main { public static void main(String[] args){ Scanner cin = new Scanner (new BufferedInputStream(System.in)); int[] num = new int[100]; num[0] = 2; for (int i = 1; i<100; i++){ //先将所有的递增数列存储于数组中 num[i] = num[i-1]+2; } while (cin.hasNext()){ int n = cin.nextInt(); int m = cin.nextInt(); for (int i=0;i<n/m;i++) //求出需要有多少 个平均值 { int sum=0; for (int j=i*m;j<(i+1)*m;j++) //求每个平均值 sum+=num[j]; if (i==0) System.out.print(sum/m); else System.out.print(" "+sum/m); } if (n%m!=0) // 如果最后不足m个 { int sum=0; for(int i=n-n%m;i<n;i++) sum+=num[i]; System.out.print(" "+sum/(n%m)); } System.out.println(); } } }