看看我为什么60分
查看原帖
看看我为什么60分
365433
Mark_M楼主2022/7/13 10:47

我测试了一下,其中一个测试点为:10 3 8 4 5;

我输出1,没过;

人家输出1,过了。

这是为什么呢???

上代码:

#include <bits/stdc++.h>
using namespace std;

int v,n;
int a[35]={};

int dp[20005]={};

int main(){
    cin>>v>>n;
    for(int i=0;i<n;i++){
        cin>>a[i];
    }

    for(int i=1;i<=n;i++){
        for(int j=v;j>=a[i];j--){
            dp[j]=max(dp[j],dp[j-a[i]]+a[i]);
        }
    }

    cout<<v-dp[v]<<endl;
    return 0;
}

球球各位dalao解释一下这是为什么?

2022/7/13 10:47
加载中...