hdu 1709 The Balance (母函数)

2015-07-20 17:33:39 · 作者: · 浏览: 4
/*
题目:给出一定(n)数量的砝码,每个砝码重a1,a2,a3。。。an,
问题:求出【1~sum】中(sum为各砝码总和)不能被称出的重量;
问题关键:天平两边都可以放砝码,
放在同一端:a[j+k]+=a[j]不同端a[abs(j-k)]+=a[j]
假设原来的砝码都放在右端,则可以把新加的砝码放在左端,得到新重量,此时a[abs(j-k)]+=a[j]。
*/
# include 
  
   
# include 
   
     # include 
    
      # include 
     
       # include 
      
        using namespace std; int main() { int n,i,j,k,flag,cot; int sum,c1[10010],c2[10010],num[110]; while(~scanf("%d",&n)) { sum=0; for(i=0; i