zoukankan      html  css  js  c++  java
  • HDU 1709

    MB,一开始就想到是不是只要加上一个不选择砝码的情况,但一直没动手做,因为看了看网上了,觉得总有点复杂,认为自己想错了。。。。

    相信自己

    #include <iostream>
    #include <cstdio>
    #include <algorithm>
    #include <cstring>
    #define N 101
    using namespace std;
    
    int c1[N*N],c2[N*N];
    int Fa[N],ans[N*N],ap;
    
    int main(){
    	int n,sum;
    	while(scanf("%d",&n)!=EOF){
    		sum=0;
    		for(int i=1;i<=n;i++){
    			scanf("%d",&Fa[i]);
    			sum+=Fa[i];
    		}
    		sort(Fa+1,Fa+n+1);
    		memset(c1,0,sizeof(c1));
    		memset(c2,0,sizeof(c2));
    		c1[0]=c1[Fa[1]]=1;
    		for(int i=2;i<=n;i++){
    			for(int j=0;j<=sum;j++){
    				for(int k=0;k<=Fa[i];k+=Fa[i])
    				c2[k+j]+=c1[j],c2[abs(k-j)]+=c1[j];
    			}
    			for(int j=0;j<=sum;j++)
    			c1[j]=c2[j],c2[j]=0;
    		}
    		ap=0;
    		for(int j=1;j<=sum;j++)
    		if(c1[j]==0){
    			ans[ap++]=j;
    		}
    		printf("%d
    ",ap);
    		if(ap) printf("%d",ans[0]);
    		for(int i=1;i<ap;i++)
    		printf(" %d",ans[i]);
    		if(ap) printf("
    ");
    	}
    	return 0;
    }
    

      

  • 相关阅读:
    js练习题2
    js样式
    js小练习
    css动画样式
    css盒子、布局样式
    css一般样式
    css样式、选择器
    html表格、表单
    html 标签
    mysql连接查询,子查询,联合查询
  • 原文地址:https://www.cnblogs.com/jie-dcai/p/4006800.html
Copyright © 2011-2022 走看看