3 条题解

  • 1
    @ 2025-7-22 19:46:33

    ……
    >﹏<
    只给了80分
    wuwuwuwuwuwuwuwwuwuwuwuwu(此处省略1万个wu)
    算了,给多少算多少,附上80分代码:
    听取WA声一片( ̄_ ̄|||)


    #include<bits/stdc++.h>
    using namespace std;
    int n,m,k;
    int a[20+10];
    int main(){
    	freopen("shelf.in","r",stdin);
    	freopen("shelf.out","w",stdout);	
        cin>>n>>k;
        for(int i=1; i<=n; i++)cin>>a[i],m+=a[i];
        sort(a+1,a+n+1);
        int f[m+1];
        f[0]=1;
        for(int i=1;i<=n;i++){ 
            for(int j=k;j>=0;j--){		
                if(f[j]==1){			
                    f[j+a[i]]=1;
                }
            }
        }
        for(int i=k;i<=m;i++){
            if(f[i]==1){	
                cout<<i-k<<endl;	
                return 0;
            }
        }
        return 0;
    }
    


    正努力AC!

    信息

    ID
    531
    时间
    1000ms
    内存
    256MiB
    难度
    7
    标签
    (无)
    递交数
    134
    已通过
    29
    上传者