题目1364:v字仇杀队

来源:互联网 发布:excel如何将数据分组 编辑:程序博客网 时间:2024/05/07 17:59
#include <iostream>#include <stdio.h>#include <algorithm>#include <math.h>#include <string>#include <string.h>#include <vector>#include <queue>#include <stack>#include <sstream>using namespace std;//1364struct Node{    int v;    int p;}zy[101];int dp[101][1001];int s,c;int main(){   // freopen("input.txt","r",stdin);    while(cin>>s>>c){//s代表总空间,c代表炸药个数        for(int i=1;i<=c;i++){            cin>>zy[i].v>>zy[i].p;        }        for(int i=1;i<=s;i++)            dp[0][i]=0;        for(int i=1;i<=c;i++){            for(int j=s;j>=zy[i].v;j--){                dp[i][j]=max(dp[i-1][j],dp[i-1][j-zy[i].v]+zy[i].p);            }            for(int j=zy[i].v-1;j>=1;j--){                dp[i][j]=dp[i-1][j];            }        }        cout<<dp[c][s]<<endl;    }    return 0;}/**************************************************************    Problem: 1364    User: cust123    Language: C++    Result: Accepted    Time:250 ms    Memory:1916 kb****************************************************************/

0 0
原创粉丝点击