1113: [Poi2008]海报PLA
1113: [Poi2008]海报PLA
Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 765 Solved: 466
[Submit][Status][Discuss]
Description
N个矩形,排成一排. 现在希望用尽量少的矩形海报Cover住它们.
Input
第一行给出数字N,代表有N个矩形.N在[1,250000] 下面N行,每行给出矩形的长与宽.其值在[1,1000000000]2 1/2 Postering
Output
最少数量的海报数.
Sample Input
5
1 2
1 3
2 2
2 5
1 4

1 2
1 3
2 2
2 5
1 4

Sample Output
4


HINT
Source
题解:一个萌萌哒单调栈,详解如下吧(显然,宽度啥的不知道作用在哪里= =,鸣谢 ZYF-ZYF神犇,祝RP++,虐场++)
题解:
ans最多等于n,那么什么情况下ans可以减小呢
首先如果减少了,肯定是贴了一张海报,覆盖住两张高度相同的矩形(宽度是打酱油的。。。)
那么就如果 h[i]=h[j] 那么就得保证 i 与 j 之间没有 比它们高度更小的了
咦?想到了什么,对了,单调栈!维护一个单调递减栈,当该元素=栈顶元素时ans--,并将栈顶元素弹栈
1 /************************************************************** 2 Problem: 1113 3 User: HansBug 4 Language: Pascal 5 Result: Accepted 6 Time:3884 ms 7 Memory:8040 kb 8 ****************************************************************/ 9 10 var 11 i,k,l,m,n:longint;j:int64; 12 a:array[0..1000005] of int64; 13 begin 14 readln(n);l:=n;k:=0; 15 for i:=1 to n do 16 begin 17 readln(j,j); 18 while j<=a[k] do 19 begin 20 if j=a[k] then dec(l); 21 dec(k); 22 end; 23 inc(k);a[k]:=j; 24 end; 25 writeln(l); 26 end.
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)