SSL2780 2017年10月20日提高T2 收银员(dp)

来源:互联网 发布:随机梯度下降算法讲解 编辑:程序博客网 时间:2024/06/05 23:08

2017年10月20日提高T2 收银员

Description

这里写图片描述

Input
这里写图片描述

分析:01背包。

代码

#include <cstdio>#define maxn 3000using namespace std;int f[maxn][maxn],n,c[maxn],t[maxn];int max(int a,int b){    return a>b?a:b;}int min(int a,int b){    return a<b?a:b;}int main(){    scanf("%d",&n);    for (int i=1;i<=n;i++)        scanf("%d%d",&t[i],&c[i]);    for (int i=0;i<=n;i++)        for (int j=0;j<=n;j++)            f[i][j]=123456789;    for (int i=0;i<=n;i++)        f[i][0]=0;    for (int i=1;i<=n;i++)        for (int j=1;j<=n;j++)            f[i][j]=min(f[i-1][j],f[i-1][max(j-t[i]-1,0)]+c[i]);    printf("%d",f[n][n]);}
阅读全文
0 0
原创粉丝点击