zoukankan      html  css  js  c++  java
  • POJ 3624 Charm Bracelet

    代码:

    错误代码:超空间:由于定义了一个二维的dp数组,然后超了,所以我们要把二维转换为一维

    #include<iostream>
    #include<stdio.h>
    #include<string.h>
    using namespace std;
    const int maxn = 3500;
    int dp[3405][12900];
    struct node{
        int w;
        int charm;
    }a[maxn];
    int main(){
        int n,m;
        scanf("%d%d",&n,&m);
        for(int i=1;i<=n;i++){
            scanf("%d%d",&a[i].w,&a[i].charm);
        }
        for(int i=1;i<=n;i++){
            for(int j=1;j<=m;j++){
                if((j-a[i].w)>=0){
                    dp[i][j] = max(dp[i-1][j],dp[i-1][j-a[i].w]+a[i].charm); 
                } 
                else
                    dp[i][j] = dp[i-1][j];
                    
            }
        }
        cout<<dp[n][m]<<endl;
        return 0;
    }

     正确代码:

    #include<iostream>
    #include<stdio.h>
    using namespace std;
    const int maxn = 13000;
    int dp[maxn];
    int w[3500],charm[3500];
    int main(){
        int n,m;
        scanf("%d%d",&n,&m);
        for(int i=1;i<=n;i++){
            scanf("%d%d",&w[i],&charm[i]);
        }
        for(int i=1;i<=n;i++){
            for(int j=m;j>=1;j--){
                if(j-w[i]>=0)
                dp[j] =  max(dp[j],dp[j-w[i]]+charm[i]);
            }
        }
        cout<<dp[m]<<endl;
        return 0;
    }

    或是

    #include<iostream>
    #include<stdio.h>
    using namespace std;
    const int maxn = 13000;
    int dp[maxn];
    int w,charm;
    int main(){
        int n,m;
        scanf("%d%d",&n,&m);
        for(int i=1;i<=n;i++){
            scanf("%d%d",&w,&charm);
            for(int j=m;j>=w;j--){
                dp[j] = max(dp[j],dp[j-w]+charm);
            }
        }
        cout<<dp[m]<<endl;
        return 0;
    }
  • 相关阅读:
    Hibernate实现CRUD的例子小结
    AspnetPager表格标题排序功能
    Microsoft企业库配置问题
    orm比较
    外语培训网求鉴定
    DIV随滚动条滚动而滚动
    图片切换效果展示
    转载C#委托之多播委托( 二)
    LINQ 图解
    不用ajax调用搞后台小技巧
  • 原文地址:https://www.cnblogs.com/lusiqi/p/12336725.html
Copyright © 2011-2022 走看看