80分,求助

P1064 [NOIP2006 提高组] 金明的预算方案

0LCH0 @ 2024-04-05 10:00:25

#include<bits/stdc++.h>
using namespace std;
long long n,m,v,p,q,mw[10010],mv[10010],fv[10010][10010],f[10010],fw[10010][10010];
int main(){
    cin>>n>>m;
    for(int i=1;i<=m;i++){
        cin>>v>>p>>q;
        if(!q){
            mw[i]=v;mv[i]=v*p;}
        else{
            fw[q][0]++;fw[q][fw[q][0]]=v;fv[q][fw[q][0]]=v*p;}}
    for(int i=1;i<=m;i++)
        for(int j=n;j>=mw[i];j--){ 
            f[j]=max(f[j],f[j-mw[i]]+mv[i]); 
            if(j>=mw[i]+fw[i][1]) f[j]=max(f[j],f[j-mw[i]-fw[i][1]]+mv[i]+fv[i][1]);
            if(j>=mw[i]+fw[i][2]) f[j]=max(f[j],f[j-mw[i]-fw[i][2]]+mv[i]+fv[i][2]);
            if(j>=mw[i]+fw[i][1]+fw[i][2]) f[j]=max(f[j],f[j-mw[i]-fw[i][1]-fw[i][2]]+mv[i]+fv[i][1]+fv[i][2]);}
    cout<<f[n];
    return 0;}

不压行:

#include<bits/stdc++.h>
using namespace std;
#define int long long
int n,m,v,p,q,mw[10010],mv[10010],fv[10010][10010],f[10010],fw[10010][10010];
main()
{
    cin>>n>>m;
    for(int i=1;i<=m;i++)
    {
        cin>>v>>p>>q;
        if(!q)
        {
            mw[i]=v;
            mv[i]=v*p;
        }
        else
        {
            fw[q][0]++;
            fw[q][fw[q][0]]=v;
            fv[q][fw[q][0]]=v*p;
        }
    }
    for(int i=1;i<=m;i++)
    {
        for(int j=n;j>=mw[i];j--)
        { 
            f[j]=max(f[j],f[j-mw[i]]+mv[i]); 
            if(j>=mw[i]+fw[i][1])
            {
                f[j]=max(f[j],f[j-mw[i]-fw[i][1]]+mv[i]+fv[i][1]);
            }
            if(j>=mw[i]+fw[i][2])
            {
                f[j]=max(f[j],f[j-mw[i]-fw[i][2]]+mv[i]+fv[i][2]);
            } 
            if(j>=mw[i]+fw[i][1]+fw[i][2])
            {
                f[j]=max(f[j],f[j-mw[i]-fw[i][1]-fw[i][2]]+mv[i]+fv[i][1]+fv[i][2]);
            } 
        }
    }
    cout<<f[n];
    return 0;
}

awa


by 0LCH0 @ 2024-04-05 10:25:03

@0LCH0 你这题数组开小了,开大点,亲测有效


by 0LCH0 @ 2024-04-05 10:25:47

@0LCH0 还有,你这码风不大好


by 0LCH0 @ 2024-04-05 10:26:21

@0LCH0 Thanks♪(・ω・)ノ,过了,我码风很好


by 0LCH0 @ 2024-04-05 10:28:42

qp


by iGen @ 2024-05-18 09:49:13

@0LCH0 你没有小号吗


by 0LCH0 @ 2024-05-19 07:47:49

@iGen 没有


|