题目链接

题意:商人要去买pruls这样的东西。然后它的价值是一个序列,买的时候要严格从头到尾取,比方你要买第5个,那么前4个也要一起买下来,求商人能获得的最大的利润。

思路:最大利润肯定就是每一个序列的最大值的和。对于输出的话,我们记录下每行能取得最大值的位置,然后回溯去计算全部可能值,然后输出前10个最小的值。

#include <iostream>
#include <cstdio>
#include <cstring>
#include <vector>
#include <algorithm> using namespace std; const int INF = 0x3f3f3f3f;
const int MAXN = 55; int arr[MAXN][MAXN], sum[MAXN][MAXN];
int num[MAXN], x[MAXN * MAXN + 5];
int w, b, ans, n; vector<int> v[MAXN]; void dfs(int cnt, int s) {
if (cnt == w) {
x[s] = 1;
return;
}
int l = v[cnt].size();
for (int i = 0; i < l; i++)
dfs(cnt + 1, s + v[cnt][i]);
} void outPut() {
int c = 10;
for (int i = 0; i < MAXN * MAXN; i++) {
if (c == 0)
break;
if (x[i]) {
printf(" %d", i);
c--;
}
}
printf("\n");
} int main() {
int t = 0;
while (scanf("%d", &w) && w) {
memset(sum, 0, sizeof(sum));
memset(num, 0, sizeof(num));
for (int i = 0; i < w; i++) {
scanf("%d", &b);
num[i] = b;
for (int j = 0; j < b; j++) {
scanf("%d", &arr[i][j]);
arr[i][j] = 10 - arr[i][j];
sum[i][j] = sum[i][j - 1] + arr[i][j];
}
} ans = 0;
for (int i = 0; i < w; i++) {
int Max = 0;
v[i].clear();
v[i].push_back(0);
for (int j = 0; j < num[i]; j++) {
if (sum[i][j] > Max) {
v[i].clear();
v[i].push_back(j + 1);
Max = sum[i][j];
}
else if (sum[i][j] == Max)
v[i].push_back(j + 1);
}
ans += Max;
} memset(x, 0, sizeof(x));
dfs(0, 0); if (t)
printf("\n");
printf("Workyards %d\n", ++t);
printf("Maximum profit is %d.\n", ans);
printf("Number of pruls to buy:");
outPut();
}
return 0;
}

UVA812-Trade on Verweggistan(暴力)的更多相关文章

  1. uva 812 Trade on Verweggistan

    题意: 给w个货架, 每个货架上有bi个货物, 每次只能拿最上面的货物, 每个货物有个价值, 所有货物的售价均为10. 问:能获得的最大利润, 以及能获得这个利润需要多少个货物. (有多种组合时只需输 ...

  2. 别人整理的DP大全(转)

    动态规划 动态规划 容易: , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ...

  3. dp题目列表

    此文转载别人,希望自己能够做完这些题目! 1.POJ动态规划题目列表 容易:1018, 1050, 1083, 1088, 1125, 1143, 1157, 1163, 1178, 1179, 11 ...

  4. poj 动态规划题目列表及总结

    此文转载别人,希望自己能够做完这些题目! 1.POJ动态规划题目列表 容易:1018, 1050, 1083, 1088, 1125, 1143, 1157, 1163, 1178, 1179, 11 ...

  5. [转] POJ DP问题

    列表一:经典题目题号:容易: 1018, 1050, 1083, 1088, 1125, 1143, 1157, 1163, 1178, 1179, 1189, 1191,1208, 1276, 13 ...

  6. poj动态规划列表

    [1]POJ 动态规划题目列表 容易: 1018, 1050, 1083, 1088, 1125, 1143, 1157, 1163, 1178, 1179, 1189, 1208, 1276, 13 ...

  7. POJ动态规划题目列表

    列表一:经典题目题号:容易: 1018, 1050, 1083, 1088, 1125, 1143, 1157, 1163, 1178, 1179, 1189, 1191,1208, 1276, 13 ...

  8. POJ 动态规划题目列表

    ]POJ 动态规划题目列表 容易: 1018, 1050, 1083, 1088, 1125, 1143, 1157, 1163, 1178, 1179, 1189, 1208, 1276, 1322 ...

  9. poj 动态规划的主题列表和总结

    此文转载别人,希望自己可以做完这些题目. 1.POJ动态规划题目列表 easy:1018, 1050, 1083, 1088, 1125, 1143, 1157, 1163, 1178, 1179, ...

随机推荐

  1. iOS- dispatch_semaphore和NSOperationQueue并发

    并发:同一个时间内运行多个任务.又叫共行性,是指处理多个同时性活动的能力. 并行:是指两个并发的任务同时发生. 并发不一定并行,并发不一定要同时发生. 举个例子: 有两个快递分别要送到目的地,有以下两 ...

  2. 关于单例模式的N种实现方式

    在开发中经常用到单例模式,单例模式也算是设计模式中最容易理解,也是最容易手写代码的模式,所以也常作为面试题来考.所以想总结一下单例模式的理论知识,方便同学们面试使用. 单例模式实现的方式只有两种类型, ...

  3. [转]Understanding Integration Services Package Configurations

    本文转自:http://msdn.microsoft.com/en-us/library/cc895212.aspx Introduction With the 2008 release, SQL S ...

  4. 深入理解Java中为什么内部类可以访问外部类的成员

    内部类简介 虽然Java是一门相对比较简单的编程语言,但是对于初学者, 还是有很多东西感觉云里雾里, 理解的不是很清晰.内部类就是一个经常让初学者感到迷惑的特性. 即使现在我自认为Java学的不错了, ...

  5. python命令行添加自动补全和命令历史功能

    # python startup file import readline import rlcompleter import atexit import os # tab completion re ...

  6. 流畅的python第九章符合Python风格的对象学习记录

    对象表示形式 每门面向对象的语言至少都有一种获取对象的字符串表示形式的标准方式.Python提供了两种方式 repr()便于开发者理解的方式返回对象的字符串表示形式 str()便于用户理解的方式返回对 ...

  7. yaha分词

    yaha分词:https://github.com/jannson/yaha

  8. 云计算之路-试用Azure:搭建自己的内网DNS服务器

    之前我们写过一篇博文谈到Azure内置的内网DNS服务器不能跨Cloud Service,而我们的虚拟机部署场景恰恰需要跨多个Cloud Service,所以目前只能选择用Azure虚拟机搭建自己的内 ...

  9. attributes vs properties --记于jquery attr不能正确更新input的value值后

    最近做的前端页面是个单页面应用,需要经常给个input赋值什么的. 我常用的方式是$('#id').attr('value','XXXX'),一直可以正常使用.今天突然发现一个问题,某个要赋值的inp ...

  10. Adb分析及获取root权限

    Adb的全称为Android Debug Bridge,起到通过PC对Android系统的调试桥的作用,是一个多用途的工具,它能够执行多种命令,还能提供一个shell.这儿简单介绍一下Adb的代码结构 ...