2014百度之星初赛第二场hdu 4831 Scenic Popularity
Scenic Popularity
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 239 Accepted Submission(s): 60
#include<stdio.h>
#include<algorithm>
using namespace std; struct node
{
int pos;
int val;
int mark;
int ll,rr;
}a[21000];
struct no
{
int id;
int val;
int dis;
}f[21000];
int main()
{
int i,j;
int T,ca=0;
scanf("%d",&T);
while(T--)
{
ca++;
int n;
scanf("%d",&n);
int cnt=0;
for(i=1;i<=n;i++)
{
scanf("%d%d",&a[i].pos,&a[i].val);
if(a[i].val)
{
a[i].mark=0;//景点
f[++cnt].id=i;
f[cnt].dis=a[i].pos;
f[cnt].val=a[i].val;
}
else
a[i].mark=1;//休息区;
}
f[0].id=0;
f[0].dis=-1000000000;
f[0].val=0;
f[cnt+1].id=n+1;
f[cnt+1].dis=1000000000;
f[cnt+1].val=0;
a[0].pos=-1000000000;
a[0].val=0;
a[n+1].pos=1000000000;
a[n+1].val=0;
int now=0;
for(i=1;i<=n;i++)
{
if(a[i].mark)
{
int l,r;
l=a[i].pos-f[now].dis;
r=f[now+1].dis-a[i].pos;
a[i].ll=f[now].id;
a[i].rr=f[now+1].id;
if(l-r<0)
a[i].val=f[now].val;
else if(l-r>0)
a[i].val=f[now+1].val;
else
a[i].val=max(f[now+1].val,f[now].val);
}
else
{
now++;
a[i].ll=a[i].rr=i;
}
//printf("%d %d %d",i,a[i].ll,a[i].rr);printf("\n");
}
int k;
scanf("%d",&k);
printf("Case #%d:\n",ca);
while(k--)
{
//for(i=1;i<=n;i++)printf("%d ",a[i].val);printf("\n");
char s[2];
scanf("%s",s);
int x,y;
if(s[0]=='Q')
{
scanf("%d",&x);
int ans=0;
for(i=1;i<=n;i++)
if(a[i].val<=x)
ans++;
printf("%d\n",ans);
}
else
{
scanf("%d%d",&x,&y);
x++;
a[x].val=y;
for(i=x-1;i>0;i--)
{
if(!a[i].mark)
break;
int l,r;
l=a[i].pos-a[a[i].ll].pos;
r=a[a[i].rr].pos-a[i].pos;
if(l-r<0)
break;
else if(l-r>0)
a[i].val=a[x].val;
else
a[i].val=max(a[a[i].ll].val,a[a[i].rr].val);
}
for(i=x+1;i<=n;i++)
{
if(!a[i].mark)
break;
int l,r;
l=a[i].pos-a[a[i].ll].pos;
r=a[a[i].rr].pos-a[i].pos;
if(l-r>0)
break;
else if(l-r<0)
a[i].val=a[x].val;
else
a[i].val=max(a[a[i].ll].val,a[a[i].rr].val);
}
}
}
}
return 0;
}
2014百度之星初赛第二场hdu 4831 Scenic Popularity的更多相关文章
- 2014百度之星预赛(第二场)——Best Financing
2014百度之星预赛(第二场)--Best Financing Problem Description 小A想通过合理投资银行理財产品达到收益最大化.已知小A在未来一段时间中的收入情况,描写叙述为两个 ...
- hdu 4831 Scenic Popularity(模拟)
pid=4831" style="font-weight:normal">题目链接:hdu 4831 Scenic Popularity 题目大意:略. 解题思路: ...
- HDU 4831 Scenic Popularity
Scenic Popularity Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others ...
- HDU 4831 Scenic Popularity (段树)
Scenic Popularity Problem Description 临近节日,度度熊们近期计划到室外游玩公园.公园内部包含了非常多的旅游景点区和歇息区,因为旅游景点非常热门,导致景点区和歇息区 ...
- HDU 5690:2016"百度之星" - 初赛 All X
原文链接:https://www.dreamwings.cn/hdu5690/2657.html All X Time Limit: 2000/1000 MS (Java/Others) Mem ...
- 2016"百度之星" - 初赛(Astar Round2A)HDU 5695 拓扑排序+优先队列
Gym Class Time Limit: 6000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total S ...
- 2016百度之星 初赛2A ABEF
只做了1001 1002 1005 1006.剩下2题可能以后补? http://acm.hdu.edu.cn/search.php?field=problem&key=2016%22%B0% ...
- 2018 计算之道初赛第二场 阿里巴巴的手机代理商(困难)(反向可持久化Trie)
阿里巴巴的手机代理商(困难) 阿里巴巴的手机代理商正在研究 infra 输入法的新功能.他们需要分析单词频率以改进用户输入法的体验.于是需要你在系统内核里面写一个 API. API 有如下功能: 添加 ...
- 【百度之星初赛A】路径交 LCA+线段树
[百度之星初赛A]路径交 Problem Description 给定一棵n个点的树,以及m条路径,每次询问第L条到第R条路径的交集部分的长度(如果一条边同时出现在2条路径上,那么它属于路径的交集). ...
随机推荐
- Java第一次学习总结
学习内容: 1.java是本学期刚刚接触新的一种编程语言,与大一C语言在语法上有很多相同之处,不同的是在很多问题上,更加简练,更加易于理解. 例如:输出水仙花数,从C语言近五十行代码缩短近十几行,数据 ...
- JPagination分页插件的使用(ASP.NET中使用)
前台代码 <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Index.asp ...
- Spring Security 报There is no PasswordEncoder mapped for the id "null"
查了下发现是spring security 版本在5.0后就要加个PasswordEncoder了 解决办法 在securityConfig类下加入NoOpPasswordEncoder,不过官方已经 ...
- lr_save_string和sprintf、lr_eval_string的使用
一.lr_save_string函数 1.该函数主要是将程序中的常量或变量保存为参数: //将常量保存为参数 lr_save_string("777","page&quo ...
- win 10 hosts文件不生效
win 10 hosts文件不生效 windows 10 hosts文件修改了,但是怎么都无法在浏览器中进行解析.一直都在等待,直到链接超时. 最后解决办法: 把hosts文件内容复制出来 ...
- WPF在资源内嵌入字体
比如需要有这种电子表的字体风格--这种样式叫 :longzhoufeng 字体 在微软的字体有 Quartz MS.TTF或者Quartz Regular.TTF字体.下面以Quartz Regula ...
- 【疑难杂症】Firefox 火狐浏览器 抓不到本地数据包
日期:2019-05-17 23:28:11 介绍:火狐浏览器,如何才能够抓到本地(127.0.0.1)的数据包? 0x01.问题描述 在 Firefox 上安装了证书,浏览器也可以正常抓取互联网的 ...
- Command line is too long. Shorten command line for testMLDome1 or also for Application default configuration
在.idea文件夹中,更改workspace.xml文件 加这段语句: <property name="dynamic.classpath" value="true ...
- tensorflow2.0 numpy.ndarray 与tenor直接互转
1.代码参考 import numpy as npimport tensorflow as tf a = np.random.random((5,3)) b = np.random.randint(0 ...
- 微PE.PE工具
1.ZC:想要 干掉Win7x64的密码(没人用的机子,不知道密码,不想重装OS) 1.1.超详细微pe工具箱使用教程 _ 微pe工具箱怎么用.html(http://www.360doc.com/c ...