博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Jzoj1277最高的奶牛
阅读量:4589 次
发布时间: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

你可能感兴趣的文章
Perl DBI模块的例子
查看>>
python中str和repr区别
查看>>
升级win10后无法使用桥接网络解决方法
查看>>
如何进行跨网段的远程唤醒
查看>>
数据挖掘-同比与环比
查看>>
nginx+php详解
查看>>
怎样取php一个字符串中的某个字符
查看>>
我的友情链接
查看>>
RedHat6 管理应用服务【11】
查看>>
stm32F10x复习-1
查看>>
redis的学习使用(ubuntu系统下)
查看>>
20135226黄坤信息安全系统设计基础期末总结
查看>>
轻松快捷创建VSFTP虚拟用户
查看>>
[转]Javascript原型继承
查看>>
[转] vue异步处理错误
查看>>
CSS 3D动画概述菜鸟级解读之一
查看>>
分布式系列文章 —— 从 ACID 到 CAP / BASE
查看>>
方法签名与方法重载
查看>>
cmake 变量
查看>>
[Programming Entity Framework] 第2章 探究实体数据模型(EDM)(一)
查看>>