输入文件:web.in   输出文件:web.out   简单对比
时间限制:1 s   内存限制:128 MB

描述 Description  
  Tyvj的Admin--zhq同学将在寒假开始实行Tyvj new web计划,把Tyvj打造成为中国一流的信息学在线评测系统。Tyvj的new web计划里一共有n项,编号1~n,每项的重要度为v[i],Admin—zhq同学共工作m次,第j次从编号为l[j]~r[j]的项目里选择重要度最大的一项任务完成,所获得的进展量为(l[j]+r[j])*该任务的重要度。完成该任务后该任务的重要度变为0。请问Admin在工作m次后可以有多少进展量呢?

注:数据保证初始情况下所有任务的重要度不同。

输入格式 Input Format
 第一行为n,m
第二行n个整数v[i]。
接下来m行,每行两个整数l,r,表示Admin这一次将会从编号为l~r的项目里选择(包括l,r)重要度最大的来完成。

输出格式 Output Format  
  最终的进展量。由于结果可能会比较大,你只需要输出mod2011之后的结果即可。
输出格式 Output Format  
  最终的进展量。由于结果可能会比较大,你只需要输出mod2011之后的结果即可。

样例输入:

5 3
1 2 3 4 5
1 3
2 3
1 5

 

样例输出:

52

线段树

RMQ 单点修改

屠龙宝刀点击就送

#include <iostream>
#include <cstdio>
using namespace std; typedef long long LL;
struct node
{
LL l,r,dis,v;
}t[*+];
LL whr,to,maxn,n,m;
void up(LL k)
{
if(t[k<<].dis>t[k<<|].dis)
{
t[k].dis=t[k<<].dis;
t[k].v=t[k<<].v;
}
else
{
t[k].dis=t[k<<|].dis;
t[k].v=t[k<<|].v;
}
}
void build(LL l,LL r,LL k)
{
t[k].l=l;t[k].r=r;
if(l==r)
{
scanf("%d",&t[k].dis);
t[k].v=t[k].l;
return;
}
LL mid=(l+r)>>;
build(l,mid,k<<);
build(mid+,r,k<<|);
up(k);
}
void query(LL l,LL r,LL k)
{
if(t[k].l==l&&t[k].r==r)
{
if(t[k].dis>maxn)
{
maxn=t[k].dis;
whr=t[k].v;
}
return;
}
LL mid=(t[k].l+t[k].r)>>;
if(r<=mid) query(l,r,k<<);
else if(l>mid) query(l,r,k<<|);
else
{
query(l,mid,k<<);
query(mid+,r,k<<|);
}
}
void delet(LL now,LL k)
{
if(t[k].l==t[k].r)
{
t[k].dis=;
t[k].v=;
return;
}
LL mid=(t[k].l+t[k].r)>>;
if(mid>=now) delet(now,k<<);
else if(mid<now) delet(now,k<<|);
up(k);
}
int main()
{
freopen("web.in","r",stdin);
freopen("web.out","w",stdout);
cin>>n>>m;
build(,n,);
LL u,v;
long long ans=;
while(m--)
{
cin>>u>>v;
maxn=;whr;
query(u,v,);
delet(whr,);
ans+=(u+v)*maxn%;
ans%=;
}
cout<<ans;
return ;
}

COGS 827. [Tyvj Feb11] 网站计划的更多相关文章

  1. cogs 826. [Tyvj Feb11] GF打dota

    826. [Tyvj Feb11] GF打dota ★★☆   输入文件:dota.in   输出文件:dota.out   简单对比时间限制:1 s   内存限制:128 MB 众所周知,GF同学喜 ...

  2. cogs 826. [Tyvj Feb11] GF打dota 次短路详细原创讲解! dijkstra

    826. [Tyvj Feb11] GF打dota ★★☆   输入文件:dota.in   输出文件:dota.out   简单对比时间限制:1 s   内存限制:128 MB 众所周知,GF同学喜 ...

  3. COGS 1191. [Tyvj Feb11] 猫咪的进化

    ★   输入文件:neko.in   输出文件:neko.out   简单对比时间限制:1 s   内存限制:128 MB [背景] 对于一只猫咪来说,它是有九条命的.但是并不是所有的猫咪都是这样,只 ...

  4. COGS——T 826. [Tyvj Feb11] GF打dota

    http://www.cogs.pro/cogs/problem/problem.php?pid=826 ★★☆   输入文件:dota.in   输出文件:dota.out   简单对比时间限制:1 ...

  5. COGS 1215. [Tyvj Aug11] 冗余电网

    ★   输入文件:ugrid.in   输出文件:ugrid.out   简单对比时间限制:1 s   内存限制:128 MB TYVJ八月月赛提高组第2题 测试点数目:5 测试点分值:20 --内存 ...

  6. cogs——1215. [Tyvj Aug11] 冗余电网

    1215. [Tyvj Aug11] 冗余电网 ★   输入文件:ugrid.in   输出文件:ugrid.out   简单对比 时间限制:1 s   内存限制:128 MB TYVJ八月月赛提高组 ...

  7. cogs 1829. [Tyvj 1728]普通平衡树 权值线段树

    1829. [Tyvj 1728]普通平衡树 ★★★   输入文件:phs.in   输出文件:phs.out   简单对比时间限制:1 s   内存限制:1000 MB [题目描述] 您需要写一种数 ...

  8. cogs 2109. [NOIP 2015] 运输计划 提高组Day2T3 树链剖分求LCA 二分答案 差分

    2109. [NOIP 2015] 运输计划 ★★★☆   输入文件:transport.in   输出文件:transport.out   简单对比时间限制:3 s   内存限制:256 MB [题 ...

  9. MVC Core 网站开发(Ninesky) 2、栏目

    栏目是网站的常用功能,按照惯例栏目分常规栏目,单页栏目,链接栏目三种类型,这次主要做添加栏目控制器和栏目模型两个内容,控制器这里会用到特性路由,模型放入业务逻辑层中(网站计划分数据访问.业务逻辑和We ...

随机推荐

  1. 出现Insufficient space for shared memory file错误解决

    今天在linux下敲命令,出现上面的错误,原来是临时文件目录(/tmp)下的空间不够了,df一看/下100%了.

  2. classname.this 和 this的使用场景

    今天在写代码时,发现在写了一个内部类,而在内部类中需要调用外部类的实例方法,直接使用this调用发现调用的不是外部类而是内部类,于是查找资料原来需要使用外部类的classname.this这样的调用, ...

  3. 分段控制器--UISegmentedControl 基本用法

    http://blog.csdn.net/heng615975867/article/details/43527295 http://blog.csdn.net/gf771115/article/de ...

  4. POJ1474:Video Surveillance(求多边形的核)(占位)

    A friend of yours has taken the job of security officer at the Star-Buy Company, a famous depart- me ...

  5. AES加密算法动画演示

    波士顿大学的Howard Straubing做了这么一个动画来展示AES加密算法的演示,挺不错的. 点击这里看全屏

  6. 在 DotNetty 中实现同步请求

    一.背景 DotNetty 本身是一个优秀的网络通讯框架,不过它是基于异步事件驱动来处理另一端的响应,需要在单独的 Handler 去处理相应的返回结果.而在我们的实际使用当中,尤其是 客户端程序 基 ...

  7. 洛谷 - P1142 - 轰炸 - 计算几何

    https://www.luogu.org/problemnew/show/P1142 枚举一个基点,枚举另一个点找出斜率,约分后存入.记得要加上那个点本身. __gcd(x,y),返回值符号与y的符 ...

  8. thrift配置——windows客户端与linux服务端通信(C++)

    windows客户端: 1.首先要安装boost库 下载源文件 2.安装boost之前先要安装python-3.4.0.amd64,很多地方没有说,弄了很久 3.运行bootstrap.bat 生成b ...

  9. npm install 各种后缀 --xx说明

    npm install xx -g 首先是在npm install xx 命令后面加 -g 它表示将当前包上下文(即,当前工作目录)安装为全局包. npm install (没有参数),在本地node ...

  10. Luogu P2051[AHOI2009]中国象棋【dp】By cellur925

    题目传送门 题目大意:给定一个$n*m$的棋盘,求放三个“炮”使它们不共行也不共列的方案数.($n,m$$<=100$) 这题主要是转移比较困难,因为情况比较多,所以需要冷静大胆细心地进行分情况 ...