bzoj4380[POI2015]Myjnie dp

[POI2015]Myjnie

Time Limit: 40 Sec  Memory Limit: 256 MBSec  Special Judge
Submit: 368  Solved: 185
[Submit][Status][Discuss]

Description

有n家洗车店从左往右排成一排,每家店都有一个正整数价格p[i]。
有m个人要来消费,第i个人会驶过第a[i]个开始一直到第b[i]个洗车店,且会选择这些店中最便宜的一个进行一次消费。但是如果这个最便宜的价格大于c[i],那么这个人就不洗车了。
请给每家店指定一个价格,使得所有人花的钱的总和最大。

Input

第一行包含两个正整数n,m(1<=n<=50,1<=m<=4000)。
接下来m行,每行包含三个正整数a[i],b[i],c[i](1<=a[i]<=b[i]<=n,1<=c[i]<=500000)

Output

第一行输出一个正整数,即消费总额的最大值。
第二行输出n个正整数,依次表示每家洗车店的价格p[i],要求1<=p[i]<=500000。
若有多组最优解,输出任意一组。

Sample Input

7 5
1 4 7
3 7 13
5 6 20
6 7 1
1 2 5

Sample Output

43
5 5 13 13 20 20 13

HINT

Source

鸣谢Claris

出题人https://www.cnblogs.com/clrs97/p/5271139.html
ysy 
 1 #include<cmath>
 2 #include<cstdio>
 3 #include<cstring>
 4 #include<iostream>
 5 #include<algorithm>
 6 
 7 #define N 55
 8 #define M 4007
 9 #define maxc 500007
10 using namespace std;
11 
12 int n,m;
13 int f[N][N][M],g[N][N][M],h[N][M];
14 int p[N][N][M],val[N];
15 int C[M],lsh[maxc],LSH[M],K;
16 
17 inline void up(int &x,const int &y)
18 {
19     if(x<y)x=y;
20 }
21 struct node
22 {
23     int a,b,c;
24 }a[M];
25 inline bool cmp(node x,node y)
26 {
27     return x.b==y.b?x.a<y.a:x.b<y.b;
28 }
29 void pre()
30 {
31     sort(a+1,a+m+1,cmp);
32 
33     sort(C+1,C+m+1); K=0;
34     for(int i=1;i<=m;i++)
35         if(C[i]!=C[i-1]) LSH[++K]=C[i],lsh[C[i]]=K;
36     for(int i=1;i<=m;i++) a[i].c=lsh[a[i].c];
37 }
38 void search(int l,int r,int k)
39 {
40     if(l>r) return ;
41     if(!g[l][r][k])
42     {
43         for(int i=l;i<=r;i++) val[i]=LSH[k];
44         return ;
45     }
46     for(int i=k;i<=K;i++) if(g[l][r][k]==f[l][r][i])
47     {
48         const int pos=p[l][r][i];
49         val[pos]=LSH[i];
50         search(l,pos-1,i); search(pos+1,r,i);
51         break;
52     }
53 }
54 int main()
55 {
56     scanf("%d%d",&n,&m);
57     for(int i=1;i<=m;i++) 
58         scanf("%d%d%d",&a[i].a,&a[i].b,&a[i].c),C[i]=a[i].c;
59     pre();
60     for(int l=n;l>=1;l--) 
61         for(int r=l;r<=n;r++)
62         {
63                for(int i=l;i<=r;i++) 
64                 for(int j=1;j<=K;j++) h[i][j]=0;
65             for(int i=1;i<=m&&a[i].b<=r;i++)
66             {
67                 if(a[i].a<l) continue;
68                 for(int j=a[i].a;j<=a[i].b;j++) 
69                     h[j][a[i].c]++;
70                }
71             for(int i=l;i<=r;i++) 
72                 for(int j=K-1;j>=1;j--) 
73                     h[i][j]+=h[i][j+1];
74             for(int i=l;i<=r;i++)
75                 for(int j=K;j>=1;j--)
76                 {
77                     int tmp=g[l][i-1][j]+g[i+1][r][j]+h[i][j]*LSH[j];
78                     if(f[l][r][j]<tmp) f[l][r][j]=tmp,p[l][r][j]=i;
79                     g[l][r][j]=g[l][r][j+1]>f[l][r][j]?g[l][r][j+1]:f[l][r][j];
80                 }
81            }
82     printf("%d\n",g[1][n][1]);
83     search(1,n,1);
84     for(int i=1;i<=n;i++)
85         printf("%d ",val[i]);
86 }

 

转载于:https://www.cnblogs.com/fengzhiyuan/p/8326193.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/428258.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

全国计算机等级考试用报名吗,全国计算机等级考试网上报名流程及考生报名使用说明...

全国计算机等级考试网上报名流程及考生报名使用说明附件&#xff1a;考生报名使用说明(一)注册账号和登录1)考生首次登录系统需要注册登录通行证&#xff0c;若考生有通行证账号&#xff0c;可以直接登录。2)考生也可使用其他账号登录&#xff0c;例如使用“QQ账号”登录。点击…

iptables nat实验_【零基础学云计算】LVS负载均衡群集之NAT模式搭建 (实践篇)...

实验原理图实验环境LVS调度器作为web服务器池的网关LVS服务器配置两块网卡分别连接内外网使用轮询&#xff08;rr&#xff09;调度算法LVS负载调度器网段规划 内网33网关&#xff1a;192.168.144.1 外网36&#xff1a;12.0.0.1web1 192.168.144.151web2 192.168.144.170nfs服务…

计算机2级ps教学大纲,《PhotoShop》教学大纲

《PhotoShop》教学大纲(本大纲适用广告设计与制作专业)一、课程的性质与任务课程的性质&#xff1a;Photoshop是广告设计与制作专业学生的一门专业必修课&#xff0c;具较强的系统性、创新性、针对性和实用性。学生通过该课程的学习&#xff0c;对会展平面设计工作的性质、任务…

rs232串口驱动_RS232与RS485在性能上有啥区别和联系?老电工总结分析,一目了然...

串口是一种非常通用的设备接口&#xff0c;是仪器仪表设备常用的通信接口&#xff0c;常用于远程采集设备数据或者实现远程控制。串口的开发也比较简单&#xff0c;它是很多工程师最喜欢的接口之一。常见的串口协议有RS-232、RS-422、RS-485等&#xff0c;它是电子工程师面对的…

win7里面计算机叫什么,Win7电脑中的mrt.exe是甚么文件

咱们正在运用Win7体系的时分&#xff0c;只有咱们翻开使命办理便能够看失到有一个mrt.exe 步伐正在运转&#xff0c;也没有知叙mrt.exe 是甚么入程的&#xff0c;否不成以制止。这Win7电脑外的mrt.exe 是甚么文件呢&#xff1f;如今便随小编一同来看看电脑外的mrt.exe是甚么文件…

svn权限配置

转载于:https://www.cnblogs.com/wzlbigdata/p/8329601.html

pytorch gather_【Pytorch】Pytorch-1.1.0 版本新特性

2019年05月01日&#xff0c;Pytorch 1.1.0 版本正式发布啦~https://github.com/pytorch/pytorch/releases/tag/v1.1.0主要的几个功能&#xff1a;1. TensorBoard (currently experimental)2. JIT 的升级 [JIT] Attributes in ScriptModules [JIT] Dictionary and List Support …

服务器宕机自动dns,有哪些同时支持智能解析和宕机自动切换的DNS服务?

RT可以支持按区域、运营商线路智能解析&#xff0c;服务器宕机自动切换解析。免费或者价格不太高的。 目前了解到华为云完全免费&#xff0c;唯独没有宕机监控。DNSPOD如果想实现上述功能&#xff0c;套餐价格不菲……求大佬们推荐青海网友 李志良独一无二 评论&#xff1a;12…

MySQL-5.7.21非图形化下载、安装、连接问题记录

1、安装包下载链接&#xff1a;https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.21-winx64.zip 官网&#xff1a;https://www.mysql.com/downloads/ -> Community ->MySQl Community Sever ->选择与电脑对应的版本DownLoad 2、解压安装包到自定义的文件夹…

c++定义一个动态全局变量_静态链接与动态链接的宏观概述及微观详解

静态链接与动态链接的宏观概述及微观详解第一部分 宏观概述 1. 静态链接静态链接就是在程序运行前&#xff0c;链接器通过对象文件中包含的重定位表&#xff0c;完成所有重定位操作&#xff0c;并最终形成一个在运行时不需要再次进行依赖库的加载和重定位操作&#xff08;因为所…

winxp上传文件到服务器,通过SQLServer的xp_cmdshell在服务器之间传送文件

xp_cmdshell作为sql Server的扩展存储过程之一&#xff0c;也是sql Server在安全大敌&#xff0c;很多sql安全手册上都要求关闭此过程&#xff0c;这不利用其特性简要实现了一个在sql服务器之间传取文件的功能&#xff0c;在sql2005下测试通过&#xff0c;现贴出代码下&#xf…

Python学习之路:多态实例

多态性&#xff08;polymorphisn&#xff09;是允许你将父对象设置成为和一个或更多的他的子对象相等的技术&#xff0c;赋值之后&#xff0c;父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作。简单的说&#xff0c;就是一句话&#xff1a;允许将子类类型的指针赋…

pwm控制舵机转动角度程序_Mixly 第15课 舵机的使用

第15课 舵机的使用舵机的旋转不像普通电机那样只是转圈圈&#xff0c;它可以根据你的指令旋转到0至180度之间的任意角度然后精准的停下来。舵机的转动的角度是通过调节PWM(脉冲宽度调制)信号的占空比来实现的。舵机比较多的用于对角度有要求的场合&#xff0c;比如机器人、摄像…

css没有border,你未必知道的CSS小知识:为什么没有人使用border-image

之前我曾经写过一篇关于CSS的border-image属性的文章。现在几乎所有的现代浏览器都支持这个属性——除了IE10及以下IE版本。看起来这是一个非常漂亮的CSS功能&#xff0c;它可以让你用图片修饰元素的边框。下面是一个实例演示&#xff0c;你可以拖拽调整里面的方块的大小&#…

1、初始JAVA

一、 语言的翻译分两种&#xff1a; 编译型语言&#xff1a;例如c语言、c语言 优点&#xff1a;速度快 缺点&#xff1a;不能跨平台 编译器编译——>特定平台的目标文件obj——>特定平台 解释型语言&#xff1a;例如PHP语言、JavaScript语言 优点&am…

base64 转文件_PHP伪协议与文件包含

PHP伪协议与文件包含PHP伪协议与文件包含php:// 协议php://inputphp://filterdata:// 协议file:// 协议zip://、bzip2://、zlib://协议zip://协议bzip2://协议zlib://协议phar://伪协议文件包含漏洞(File Inclusion)文件包含漏洞&#xff1a;即file inclusion&#xff0c;意思是…

为什么移动卡上到手机上显示无服务器,移动手机卡加密失败然后就没有服务器无聊的时候给手机卡加密因为不知? 爱问知识人...

解决方法&#xff1a;a ) 该方法通常适用于一台或数台客户端不能登录的情况&#xff0c;不适用于所有的客户端不能登录的情况&#xff0c;首先&#xff0c;检查服务器上有无该客户端当前登录用户名&#xff0c;如有则可能是客户端的擅自更改了客户端的用户windows登录密码&…

Java基础_0206:方法的定义与使用

方法的基本概念 方法的主要功能是封装可以执行的一段代码&#xff0c;这样不仅可以进行重复调用&#xff0c;更可以方便的实现代码的维护&#xff0c;而本次使用的方法定义语法如下所示。 public static 返回值类型 方法名称(参数类型 参数变量, ...) {方法体&#xff08;本方法…

redis 登录_Redis集群架构+Dubbo开发框架+SSO单点登录+Nginx+ZooKeeper

Redis集群架构【课程介绍】Redis是现在使用为广泛的NoSQL数据库技术&#xff0c;其自身不仅拥有着良好的操作性能&#xff0c;也被广泛的应用于各种集群架构的数据整合处理之中&#xff0c;而本课程将通过Redis的核心作用&#xff0c;以及单实例redis存在的问题为读者进行分析&…

ajax 提交 .net ispostback不执行,ASP.NET基于Ajax的Enter键提交问题分析

本文实例讲述了ASP.NET基于Ajax的Enter键提交。分享给大家供大家参考&#xff0c;具体如下&#xff1a;近日遇到一个Enter键的问题&#xff0c;总结下&#xff1a;1. 首先复习下html form对Enter的响应&#xff0c;不同的浏览器对Enter的处理略有不同&#xff0c;这里采用IE7A.…