hdu 4927 Series 1

二項式係數展開,係數可以遞推得到。注意正負號。

import java.math.BigInteger;
import java.util.Scanner;


public class Main {
	
	public static void main(String[] args) {
		
		Scanner cin = new Scanner(System.in);
		int t = cin.nextInt();
		while(t > 0){
			t--;
			int n = cin.nextInt();
			int flag;//正負標記
			if(n%2 == 1) flag = 1;
			else flag = -1;
			n--;
			int num;
			BigInteger a = new BigInteger("1");
			BigInteger ans = new BigInteger("0");
			for(int i = 0;i <= n;i++){
				num = cin.nextInt();
				ans = ans.add(a.multiply(BigInteger.valueOf(flag)).multiply(BigInteger.valueOf(num)));
				flag=flag*-1;
				a=a.multiply(BigInteger.valueOf(n-i)).divide(BigInteger.valueOf(i+1));
			}
			System.out.println(ans);
		}
	}

}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章