题目大意:

给你n*m的矩形(m >= n)

每个节点mp[i][j]有一个权值,从第一行走到最后一行,每一行只准选择一个数且对于i行,所选数的列数要严格大于i-1行选择的列数

问你最大权值是多少,并输出选择的n个列数

思路:

DP方程非常好想:DP[i][j] = max(DP[i][j - 1], DP[i - 1][j - 1] + mp[i][j]);

找路径的话,可以每行可以从从i+1到m,也可以直接从i - 1开始找

也可以在DP里面做标记,状态转移的时候将此点记录!

但是不能想的太无脑,你懂的

附上代码;

#include <iostream>
#include <stdio.h>
#include <algorithm>
#include <string.h>
#include <string>
#include <math.h>
#include <stack>
#include <queue>
#include <vector>
#include <map>
#include <set>
#pragma warning(disable:4996)#define Zero(a) memset(a, 0, sizeof(a))
#define Neg(a)  memset(a, -1, sizeof(a))
#define All(a) a.begin(), a.end()
#define PB push_back
#define repf(i,a,b) for(int i = a;i <= b; i++)
#define repff(i,a,b) for(int i = a; i < b; ++i)
#define lson l,m,rt<<1
#define rson m+1,r,rt<<1|1
#define root 1,n,1
#define ld rt << 1
#define rd rt << 1 | 1
#define ll long long
#define MAXN 105
#define INF 0x3f3f3f3f
#define mod 10007
using namespace std;
vector<int>go;
int n, m, dp[MAXN][MAXN], gg[MAXN][MAXN], mp[MAXN][MAXN];
void init(){memset(gg, 0, sizeof(gg));for (int i = 1; i <= n; ++i)for (int j = 1; j <= m; ++j){scanf("%d", &mp[i][j]);if(i != 0)dp[i][j] = -INF;else dp[i][j] = 0;}for (int i = 0; i <= n; ++i)for (int j = 0; j <= m; ++j){if (i != 0)dp[i][j] = -INF;else dp[i][j] = 0;}go.clear();
}int main(){while (~scanf("%d%d", &n, &m)){init();for (int i = 1; i <= n; ++i)for (int j = 1; j <= m; ++j){if (dp[i - 1][j - 1] + mp[i][j] > dp[i][j - 1]){gg[i][j] = 1;//cout << "go" << endl;dp[i][j] = dp[i - 1][j - 1] + mp[i][j];}else{dp[i][j] = dp[i][j - 1];}}printf("%d\n", dp[n][m]);int nowx = n,nowy = m;while (nowx && nowy){if (gg[nowx][nowy] == 1){go.push_back(nowy);nowx--;nowy--;}else{nowy--;}}int len = go.size();for (int i = len - 1; i >= 0; --i){if (i != len - 1) printf(" ");printf("%d", go[i]);}puts("");}return 0;
}

转载于:https://www.cnblogs.com/mashiroG/p/4663020.html

【SGU】SGU每日练1·Little shop of flowers【DP】相关推荐

  1. C语言3067答案,教师招聘《小学教育心理学》通关试题每日练(2020年03月03日-3067)...

    1:将学习策略分为基本策略和支持策略的是( ). 单项选择题 A.丹瑟洛 B.尼斯比特 C.皮连生 D.鲍斯菲尔德 2:奠定儿童人格和心理健康基础的是( ). 单项选择题 A.社会 B.家庭 C.学校 ...

  2. 面试时为什么想当计算机老师,每日练·面试丨你为什么想当老师?

    原标题:每日练·面试丨你为什么想当老师? 今天的问题不是老生常谈,每个想当教师的心里都该有自己的答案. 题目 你为什么想当老师? 参考答案 苏格拉底曾说过:世界上最快乐的事,莫过于为理想而奋斗.从我个 ...

  3. 每日练琴菜单 ---非常有效的古筝学习方法

    1 .时间分配 弹古筝者,必须每天练琴.常言道:"一天不练自己知道,两天不练同行知道,三天不练老师知道,四天不练大家都知道."特别是学习古筝专业的学生,每天一定要保证3-5小时的练 ...

  4. 牛客算法周周练2 B Music Problem(DP,抽屉原理,二进制拆分)

    链接:https://ac.nowcoder.com/acm/contest/5203/B 来源:牛客网 题目描述 Listening to the music is relax, but for o ...

  5. [CH5E02] A Little Shop of Flowers

    问题描述 You want to arrange the window of your flower shop in a most pleasant way. You have F bunches o ...

  6. pku1157-------LITTLE SHOP OF FLOWERS(简单动态规划题:摆放鲜花使审美价值达到最高)...

    328K 16MS GCC 566B 2009-01-12 12:55:30 设置一个best数组,两个用处: 1)存放输入数据 2)best[i][j]表示前i束花放到前j个花瓶中能得到的最大的审美 ...

  7. NO.1157 Litte Shop Of Flowers

    动态规划 scanf和printf的确比cin和cout快得多,前者要16MS,而后者却要76MS. #include<iostream.h> #include<stdio.h> ...

  8. POJ 超详细分类

    POJ 各题算法 1000    A+B Problem            送分题     49%    2005-5-7 1001    Exponentiation         高精度   ...

  9. POJ前面的题目算法思路【转】

    1000 A+B Problem 送分题 49% 2005-5-7 1001 Exponentiation 高精度 85% 2005-5-7 1002 487-3279 n/a 90% 2005-5- ...

最新文章

  1. Coding-排序(sort)
  2. jd-gui的下载和使用
  3. ORACLE的ASM
  4. HTML5 Canvas 旋转
  5. Java写手机专题分析接口_jeesite学习文档API-内容管理模块
  6. 计算机控制读书报告心得,计算机控制系统读书报告
  7. Camel中的几个重要概念之 Components
  8. jQuery 输入框 在光标位置插入内容, 并选中
  9. POJ-2400 Supervisor, Supervisee 带权值匹配+枚举所有匹配情况
  10. android 键盘 自动消失,android 软键盘 回到键 消失事件 监听
  11. 设计模式之不简单的工厂模式(一)
  12. SQL_Server_2008完全学习之第六章数据查询和管理
  13. 【ArcGIS|空间分析】志愿者分配管理区域内共享单车(全国大学生GIS技能大赛试题)
  14. 覆写和重载 虚方法与抽象方法 (转)
  15. 打开浏览器网址方法(PyQt Qt for python)
  16. 怎么让联想计算机升级,如何刷bios,教您联想电脑如何刷bios
  17. 网络限速软件测试大乐,宽带测速谁靠谱?网速测试软件大对比
  18. 【C语言】pow函数的模拟实现(递归)
  19. windows WTS 服务与桌面交互
  20. java小组口号,小组口号霸气

热门文章

  1. html百度天气api,百度API 免费接口获取天气预报
  2. mysql 日志 设置 set_MySQL 慢查询日志的开启与配置
  3. 如何获取exception的target异常_三个好习惯,帮你写好Python里的异常处理
  4. C++笔记-二维棋盘数组转邻接表(使用QTL)
  5. Qt + Python + OpenCV图标替换工具 之 Python调用dll(三)
  6. 简单的反U盘病毒(删除不了的畸形文件夹)
  7. html 图片自由缩放_PS中的“缩放”
  8. oracle触发器无效且,oracle创建触发器成功但是插值失败
  9. ccf推荐期刊和会议目录_重磅快讯:大数据入选CCF推荐中文科技期刊目录!
  10. python调用高德地图api 可视化_Python:利用高德地图API实现找房