zoukankan      html  css  js  c++  java
  • 【题解】任务分配

    用DP[i][j]表示前i项任务,A完成需要j时间,B完成需要DP[i][j]时间。

    递推方程也很容易得出来

    DP[i][j]=min(DP[i-1][j]+B[i],DP[i-1][j-A[i]])//其中A[i],B[i]分别表示A,B完成第i项任务需要的时间。

    下附代码

     1 #include <algorithm>
     2 #include <iostream>
     3 #include <fstream>
     4 #include <cstdlib>
     5 #include <cstring>
     6 #include <cmath>
     7 using namespace std;
     8 ifstream fin("divide.in");
     9 ofstream fout("divide.out");
    10 int DP[203][40005]={0},rws=0,rw[203][2]={0};
    11 int main(void)
    12 {
    13  fin>>rws;
    14  for(int i=1;i<=rws;i++)fin>>rw[i][0]>>rw[i][1];
    15  DP[0][0]=0;
    16  int num=0;
    17  for(int i=1;i<=rws;i++)
    18     {
    19      num+=rw[i][0];
    20      for(int j=0;j<=num;j++)
    21         {
    22          DP[i][j]=DP[i-1][j]+rw[i][1];
    23          if(j>=rw[i][0])
    24            {
    25             DP[i][j]=min(DP[i][j],DP[i-1][j-rw[i][0]]);
    26            }
    27         }
    28     }
    29  int ans=0x7fffffff;
    30  for(int i=1;i<=num;i++)
    31     {
    32      ans=min(ans,max(DP[rws][i],i));
    33     }
    34  fout<<ans;
    35  return 0;
    36 }
  • 相关阅读:
    33. Search in Rotated Sorted Array
    文章
    导航
    页眉和页脚
    渐变
    图像翻转与子画面
    背景图像定位
    背景图像
    使用css将图像居中
    使用CSS将图像对齐
  • 原文地址:https://www.cnblogs.com/CYWer/p/4923355.html
Copyright © 2011-2022 走看看