zoukankan      html  css  js  c++  java
  • 算法训练 装箱问题

      算法训练 装箱问题  
    时间限制:1.0s   内存限制:256.0MB
          
    问题描述
      有一个箱子容量为V(正整数,0<=V<=20000),同时有n个物品(0<n<=30),每个物品有一个体积(正整数)。
      要求n个物品中,任取若干个装入箱内,使箱子的剩余空间为最小。
    输入格式
      第一行为一个整数,表示箱子容量;
      第二行为一个整数,表示有n个物品;
      接下来n行,每行一个整数表示这n个物品的各自体积。
    输出格式
      一个整数,表示箱子剩余空间。
      样例输入
      24
      6
      8
      3
      12
      7
      9
      7
    样例输出
    0
    import java.util.Scanner;
    public class Main {
        static int v;
        static int n;
        static int va[];
        static int dp[][];
        static void solve(){
            for(int i=0;i<n;i++){
                for(int j=0;j<=v;j++){
                    if(va[i]>j) dp[i+1][j]=dp[i][j];
                    else
                    dp[i+1][j]=Math.max(dp[i][j],dp[i][j-va[i]]+va[i] );
                }
            }
            
            System.out.println(v-dp[n][v]);
        }
    
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            Scanner sc=new Scanner(System.in);
             v=sc.nextInt();
             n=sc.nextInt();
             va=new int[n];
             dp=new int[n+1][v+1];
            for(int i=0;i<n;i++){
                va[i]=sc.nextInt();
            }
            solve();
    
        }
    
    }
  • 相关阅读:
    如何查看跟踪查看LINUX内核中的源码
    LINUX中的虚拟文件系统结构
    《linux程序设计》笔记 第一章 入门
    ajax基本用法
    Redis PHP连接操作
    Redis使用详细教程
    PHP缓存技术的多种方法小结
    PHPStorm+XDebug进行调试
    phpstorm配置Xdebug进行调试PHP教程
    Mac上简单常用Terminal命令
  • 原文地址:https://www.cnblogs.com/watchfree/p/5769654.html
Copyright © 2011-2022 走看看