博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Jzoj1277最高的奶牛
阅读量:4585 次
发布时间:2019-06-09

本文共 590 字,大约阅读时间需要 1 分钟。

给你一个序列s和n个限制,(a,b)表示s[a]<=s[b] 而且 对于i∈(a,b)满足s[i]<s[a],问s每个元素最大值(已经给定原序列的最大值)

这不是裸的差分约束吗哈哈哈哈 

诶TLE了怎么破

认真观察发现:对于每个限制,要么不相交,要么包含,所以对于一组询问(a,b),将(a,b)内的数全部减掉1即可,可以用前缀和

不过记得判重。。。这个很坑

#include
#include
using namespace std;set
f[10010];int n,m,h,k,s[10010];int main(){ scanf("%d%d%d%d",&n,&k,&h,&m); s[0]=h; for(int a,b,i=0;i
b) { a+=b; b=a-b; a-=b; } if(!f[a].count(b)){ s[a+1]--; s[b]++; f[a].insert(b); } } for(int i=1;i<=n;++i) printf("%d\n",s[i]+=s[i-1]);}

转载于:https://www.cnblogs.com/Extended-Ash/p/9477371.html

你可能感兴趣的文章
数据库设计常考题目简要分析
查看>>
《C++ Primer Plus(第6版)》14章 C++代码复用 - 代码清单14.3
查看>>
C#关于软件界面无响应、BUG报警、程序异常退出等情况的监控和报警
查看>>
Linux中获取root权限及关机重启语法
查看>>
个人阅读作业2
查看>>
内置函数
查看>>
js基础之DOM中元素对象的属性方法
查看>>
【高并发架构】缓存的挑战
查看>>
JavaScript检测数组中是否存在满足某些条件的元素
查看>>
[C语言]CPU跑分程序
查看>>
dockerfile中所需要的指令
查看>>
触发器
查看>>
JavaScript总结(1)
查看>>
iOS 有关内存管理的一个错误分析
查看>>
JavaScript循环和数组常用操作
查看>>
re模块(正则表达式)
查看>>
IOS UIView动画(封装动画)
查看>>
Python简单的爬取网页信息并生成json文件与乱码解决小记
查看>>
雷林鹏分享:Redis 安全
查看>>
某表中字段值存在多个Gid逗号分开 取值拆分每个gid SQL多个逗号隔开的取值
查看>>