jzoj5950
我們發現如下結論:
1.只有編號小的點才會對編號大的點產生影響
2.當當前點的y坐標大小為1~i最大的,則不會被以前的點影響
於是,維護一個斜率單調遞增的隊列
當當前點的y坐標大小為1~i最大的,則這個點的b值為i
否則,不斷刪去隊列尾部的點,直到隊尾的點y值大於現在的點,輸出隊尾的點的編號
為什麼?因為隊尾的點的y值是1~i-1的點中最後一個y值比現在點大的,我們這個點雖然被前面的點更新,但是更新它最後一個點是隊尾的點
#include<cstdio>
#include<cstring>
#include<cmath>
#include<algorithm>
using namespace std;
int n,x[1000010],y[1000010],st[1000010],ct,mn,b[1000010];
int main(){
freopen("beatall.in","r",stdin);
freopen("beatall.out","w",stdout);
scanf("%d",&n);
for(int i=1;i<=n;i++)
scanf("%d%d",&x[i],&y[i]);
mn=-2e9;
for(int i=1;i<=n;i++){
if(y[i]>=mn){
mn=y[i];
ct=0;
st[++ct]=i;
b[i]=i;
}
else{
while(ct&&((long long)(y[st[ct-1]]-y[st[ct]])*(x[st[ct]]-x[i]))<=((long long)(x[st[ct-1]]-x[st[ct]])*(y[st[ct]]-y[i])))ct--;
b[i]=st[ct];
st[++ct]=i;
}
}
for(int i=1;i<=n;i++)
printf("%d\n",b[i]);
}
jzoj5950的更多相关文章
随机推荐
- LINQ to Entities 不支持 LINQ 表达式节点类型“ArrayIndex”。
错误原因: bool res1 = S_ROLE_MENU_PURVIEWCODE_Manage.Delete(c => c.MPC_CODE == strs[0]); linq不能写strs[ ...
- JavaScript 中的 NaN 和 isNaN
1.NaN NaN 即 Not a Number , 不是一个数字.那么 NaN 到底是什么呢? 在 JavaScript 中,整数和浮点数都统称为 Number 类型 .除此之外,Number 类型 ...
- svn一次性add/delete所有文件
Linux命令行下,svn add 一次性批量上传 命令行下操作svn没有使用界面形式的TortoiseSVN直观,但是不管怎样,命令行下操作svn还是有它的有点,如果你碰到一次需要svn add许多 ...
- 还在手工制作APP规范文档?这款设计神器你不容错过
之前写了一些关于APP原型文档的文章:一款APP的交互文档从撰写到交付 这次想写下关于APP设计规范文档的内容,规范文档这个东西,实际上大部分中小型公司没有这方面的需求,也没精力去制作这样一个系统性的 ...
- 记unit of work与事务提交
https://docs.microsoft.com/en-us/aspnet/mvc/overview/older-versions/getting-started-with-ef-5-using- ...
- 选择排序(直接排序)java语言实现
class demo { public static void main(String[] args) { int[] arr={1,4,2,6,8,9,0,5,3,2,2,4,4,6,7,8}; f ...
- C# 编写最小化时隐藏为任务栏图标的Window appllication
1.设置窗体属性showinTask=false 2.加notifyicon控件notifyIcon1,为控件notifyIcon1的属性Icon添加一个icon图标. 3.添加窗体最小化事件(首先需 ...
- 打开yii2控制台命令
1.在控制台中切换到yii2控制台入口文件的工作路径.如:C:\users\2016-01>D:www\blogdemo\yii
- 4) Maven 安装
# ----------------------------------------------------------------------------# Maven2 Start Up Batc ...
- RabbitMQ 初探
有哪些优点 可靠性:RabbitMQ 提供了多种技术可以让你在性能和可靠性之间进行权衡.这些技术包括持久性.投递确认.发布者证实和高可用性. 灵活的路由:提供了多种内置交换机类型.如果你有更复杂的路由 ...