9630065 | 2013-11-20 11:27:36 | Accepted | 2015 | 125MS | 4916K | 657 B | Java | jack |
偶数求和
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 37775 Accepted Submission(s): 16338
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
import java.util.Scanner; public class hdu2015 { public static void main(String[] args) { int[] arr =new int[101]; int m=2; for(int i=1;i<=100;i++){ arr[i]=m; m+=2; } Scanner cin = new Scanner(System.in); while(cin.hasNext()){ int n=cin.nextInt(); int k=cin.nextInt(); int cou=0; for(int i=1;i<=n;i++){ cou+=arr[i]; if(i%k==0){ if(i==n) System.out.print(cou/k ); //确保万一i%k==0,最后不能带空格 else System.out.print(cou/k+" "); cou=0; } } if(cou!=0) System.out.println(cou/(n%k)); //如果最后不足m个,则以实际数量求平均值,刚开始忘了cou/(n%k),没想到竟然AC了,郁闷 else System.out.println(); } } }