2 条题解

  • 0
    @ 2025-7-22 20:13:29
    #include<bits/stdc++.h>
    using namespace std;
    int n,b,res;
    int a[250+5];
    int best=10000000000;
    void solve(int num,int sum){
    	if(sum>=b && sum<best){
    		best=sum;
    	}
    	if(num==n || sum>=best){
    		return;
    	}
    	solve(num+1,sum+a[num]);
    	solve(num+1,sum);
    	res=best-b;
    }
    int main()
    {
    	cin>>n>>b;
    	for(int i=0;i<n;i++){
    		cin>>a[i];
    	}
    	solve(0,0);
    	cout<<res;
    	return 0;
    }
    
    
    

    提交记录

    信息

    ID
    617
    时间
    1000ms
    内存
    256MiB
    难度
    5
    标签
    (无)
    递交数
    30
    已通过
    13
    上传者