题目 1159: 偶数求和

题目描述:

有一个长度为n(n<=100)的数列,该数列定义为从2开始的递增有序偶数(公差为2的等差数列),现在要求你按照顺序每m个数求出一个平均值,如果最后不足m个,则以实际数量求平均值。编程输出该平均值序列。

代码:

package lanqiao;

import java.io.BufferedInputStream;
import java.util.*;

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        while (sc.hasNextInt()) {
            int n=sc.nextInt();
            int m=sc.nextInt();
            int index=0;//当前加到的位置
            int num=0;//当前的数字
            int sum=0;

            while (index=m) { //还有m个数字能取
                    sum=0;

                    for (int i = 0; i < m; i++) {
                        num+=2;
                        sum+=num;
                        index++;
                    }
                    System.out.print(sum/m+" ");
                }else{

                    int len=n-index;//所剩的数字个数
                    sum=0;
                    for (int i = 0; i < len; i++) {
                        num+=2;
                        sum+=num;
                        index++;
                    }
                    System.out.println(sum/len);
                }
            }
        }
    }
}

你可能感兴趣的:(蓝桥杯,java,算法,开发语言)