2 条题解

  • 1
    @ 2023-8-23 15:29:42

    #include<bits/stdc++.h> using namespace std; int w[1000],v[1000],f[50000]; int n,m; int main(){ cin>>m>>n; for(int i=1;i<=n;i++){ cin>>v[i]>>w[i]; w[i]*=v[i]; } for(int i=1;i<=n;i++){ for(int j=m;j>=v[i];j--){ if(j>=v[i]) f[j]=max(f[j],f[j-v[i]]+w[i]); } } cout<<f[m]<<endl; return 0; }

    • 0
      @ 2026-4-3 13:42:18

      #include<bits/stdc++.h> using namespace std; int w[1000],v[1000],f[50000]; int n,m; int main(){ cin>>m>>n; for(int i=1;i<=n;i++) { cin>>v[i]>>w[i]; w[i]*=v[i]; } for(int i=1;i<=n;i++) { for(int j=m;j>=v[i];j--) { if(j>=v[i]) f[j]=max(f[j],f[j-v[i]]+w[i]); } } cout<<f[m]<<endl; return 0; }

      • 1

      信息

      ID
      635
      时间
      1000ms
      内存
      128MiB
      难度
      2
      标签
      递交数
      77
      已通过
      62
      上传者