zoukankan      html  css  js  c++  java
  • 衣服?身外之物!

    gcdgcd共有nn件衣服,编号为A1​,A2​,⋯An​每一件衣服分别拥有颜色值和清洗时间,他在每一件衣服穿完以后都会将其送去清洗,而这件衣服当天所拥有的舒适感取决于当天的天气与他的衣服颜色值的乘积。
    PS:天气值存在负数
    现给出共mm天的天气情况,求最大舒适值。如果必定有一天gcdgcd没有衣服穿,输出"gcd loves her clothes!"。


    听说要4进制状压?

    5维数组跑的毫无压力(~ ̄▽ ̄)~

    夸我蚂蜂美丽


    #include<iostream>
    #include<cstdio>
    #include<algorithm>
    #include<cstring>
    #define LL long long
    #define M -999999999999999
    #define max(a,b) ((a)>(b)? (a):(b))
    #define min(a,b) ((a)<(b)? (a):(b))
    
    using namespace std;
    
    int i,m,n,j,k,x[10001],y[10001],z[10001],a,b,c,d;
    LL f[7][7][7][7][2001],ans=M-1;
    
    int main()
    {
        memset(f,-0x3f,sizeof(f));
        scanf("%d%d",&n,&m);
        for(i=1;i<=n;i++) scanf("%d",&x[i]);
        for(i=1;i<=n;i++) scanf("%d",&y[i]);
        for(i=1;i<=m;i++) scanf("%d",&z[i]);
        f[0][0][0][0][0]=0;
        for(i=0;i<m;i++)
            for(a=0;a<=y[1];a++)
            for(b=0;b<=y[2];b++)
            for(c=0;c<=y[3];c++)
            for(d=0;d<=y[4];d++)
            {
                if(a && b && c && d) continue;
                if(f[a][b][c][d][i]<M) continue;
                if(n>=1 && (!a)) f[y[1]][max(b-1,0)][max(c-1,0)][max(d-1,0)][i+1]=max(f[a][b][c][d][i]+(LL)z[i+1]*x[1],f[y[1]][max(b-1,0)][max(c-1,0)][max(d-1,0)][i+1]);
                if(n>=2 && (!b)) f[max(a-1,0)][y[2]][max(c-1,0)][max(d-1,0)][i+1]=max(f[a][b][c][d][i]+(LL)z[i+1]*x[2],f[max(a-1,0)][y[2]][max(c-1,0)][max(d-1,0)][i+1]);
                if(n>=3 && (!c)) f[max(a-1,0)][max(b-1,0)][y[3]][max(d-1,0)][i+1]=max(f[a][b][c][d][i]+(LL)z[i+1]*x[3],f[max(a-1,0)][max(b-1,0)][y[3]][max(d-1,0)][i+1]);
                if(n>=4 && (!d)) f[max(a-1,0)][max(b-1,0)][max(c-1,0)][y[4]][i+1]=max(f[a][b][c][d][i]+(LL)z[i+1]*x[4],f[max(a-1,0)][max(b-1,0)][max(c-1,0)][y[4]][i+1]);
            }
        for(a=0;a<=y[1];a++)
        for(b=0;b<=y[2];b++)
        for(c=0;c<=y[3];c++)
        for(d=0;d<=y[4];d++)
            ans=max(ans,f[a][b][c][d][m]);
        if(ans<M) printf("gcd loves her clothes!");
        else printf("%lld",ans);
    }
    
  • 相关阅读:
    第八次作业
    微信用户体验
    •设计一款给爸爸妈妈用的手机
    对类的继承
    必应词典
    第二次作业二
    第二次作业
    我想搞的软工
    数字签名
    C++的学习心得
  • 原文地址:https://www.cnblogs.com/ZUTTER/p/9853225.html
Copyright © 2011-2022 走看看