1 条题解

  • 0
    @ 2026-10-25 17:16:48

    思路

    球数及体力双限制,体力必须严格为正,同数量下最小伤害。

    参考程序(C++11)

    #include <bits/stdc++.h>
    using namespace std;
    int main(){int n,m,k;cin>>n>>m>>k;vector<vector<int>>d(n+1,vector<int>(m));while(k--){int b,h;cin>>b>>h;for(int x=n;x>=b;x--)for(int y=m-1;y>=h;y--)d[x][y]=max(d[x][y],d[x-b][y-h]+1);}int best=d[n][m-1],spent=0;while(d[n][spent]!=best)spent++;cout<<best<<' '<<m-spent<<'\n';}
    
    • 1

    信息

    ID
    1273
    时间
    1000ms
    内存
    64MiB
    难度
    普及
    标签
    递交数
    1
    已通过
    1
    上传者