1. 程式人生 > >第七屆藍橋杯 Java 煤球數目問題

第七屆藍橋杯 Java 煤球數目問題

煤球數目

有一堆煤球,堆成三角稜錐形。具體: 第一層放1個, 第二層3個(排列成三角形), 第三層6個(排列成三角形), 第四層10個(排列成三角形), … 如果一共有100層,共有多少個煤球?

請填表示煤球總數目的數字。 注意:你提交的應該是一個整數,不要填寫任何多餘的內容或說明性文字。 問題分析 很容易找到規律,第n層煤球數目 = n-1層煤球數目 + n,可以利用迴圈和遞迴兩種方法求解。

迴圈演算法

public class Main {
	public static void main(String[] args){
		int all = 0;
		for(int i = 1;i<=100;i++){
			all += i;
		}
		System.out.println(all);
	}
}

遞迴演算法

public class Main{
	public static int f(int n){
		if(n == 1){
			return 1;
		}
		else{
			return f(n-1) + n;
		}
	}
	public static void main(String[] args) {
		System.out.println(f(100));
	}
}

執行結果 5050

如對該部落格有意見或建議,歡迎留言或私信我^ _ ^