COGS 827. [Tyvj Feb11] 网站计划

输入文件: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

线段树

区间最大值 单点修改

屠龙宝刀点击就送

#include <iostream>
#include <cstdio>
using namespace std;

typedef long long LL;
struct node
{
    LL l,r,dis,v;
}t[200000*4+1];
LL whr,to,maxn,n,m;
void up(LL k)
{
    if(t[k<<1].dis>t[k<<1|1].dis)
    {
        t[k].dis=t[k<<1].dis;
        t[k].v=t[k<<1].v;
    }
    else
    {
        t[k].dis=t[k<<1|1].dis;
        t[k].v=t[k<<1|1].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)>>1;
    build(l,mid,k<<1);
    build(mid+1,r,k<<1|1);
    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)>>1;
    if(r<=mid) query(l,r,k<<1);
    else if(l>mid) query(l,r,k<<1|1);
    else
    {
        query(l,mid,k<<1);
        query(mid+1,r,k<<1|1);
    }
}
void delet(LL now,LL k)
{
    if(t[k].l==t[k].r)
    {
        t[k].dis=0;
        t[k].v=0;
        return;
    }
    LL mid=(t[k].l+t[k].r)>>1;
    if(mid>=now) delet(now,k<<1);
    else if(mid<now) delet(now,k<<1|1);
    up(k);
}
int main()
{
    freopen("web.in","r",stdin);
    freopen("web.out","w",stdout);
    cin>>n>>m;
    build(1,n,1);
    LL u,v;
    long long ans=0;
    while(m--)
    {
        cin>>u>>v;
        maxn=0;whr;
        query(u,v,1);
        delet(whr,1);
        ans+=(u+v)*maxn%2011;
        ans%=2011;
    }
    cout<<ans;
    return 0;
}
时间: 2024-10-16 05:41:08

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

COGS 1215. [Tyvj Aug11] 冗余电网

★   输入文件:ugrid.in   输出文件:ugrid.out   简单对比时间限制:1 s   内存限制:128 MB TYVJ八月月赛提高组第2题 测试点数目:5 测试点分值:20 --内存限制:128M --时间限制:1s [题目描述] 北冰洋有一座孤岛,多年来一直没电.近日,令岛民们振奋的消息传来:S国的专家要为他们修建电网!!!孤 岛上共有N个村庄,发电站要建在第K个村庄中.S国的专家要在N个村庄间修建M条输电线路,但由于地理原因,M条线路无法保证每个村庄都与第K个村庄(建 有发

网站计划

我的网站:https://s1124yy.top/ 1.自己用js和jq写一个主页(动态切换背景,带音乐播放器),链接到自己写过的东西,最好能响应式,为了简历上能写点东西 2.多写一些实战的小项目,挂到主页上,代码托管在GitHub上 3.如果有余力,自己写个博客,感觉用wp没什么技术含量,但自己写又感觉太难,尽力而为吧. 4.多写多用js和jq,要有想法,最好做出几个自己想的东西. 5.学习Vue,WebPack,BootStrap 要到会用的程度 6.多看PHP中文网,慕课网,开发手册和文档

网站运营计划【运营者】

根据目前公司现有资源以及下半年发展规划,以XX网站.微信.微博为基础制定此次运营推广计划,旨在增加XX网站.微信.微博用户,抢占网络市场,增加各资源曝光率,并使得XX网站.微信.微博可以相互扶持共同进步,力争早日达到预期效果.   一.网站定位和推广站项目   1.XX网站的定位 XX网站的定位是智能产品的行业网站,用户可以在我们的网站进行最新智能产品的了解,包括国内外最新的智能产品信息,智能产品的评测等,网站用户群体定位于科技公司,智能产品发烧友,一般智能产品使用客户,大众智能产品关注用户.

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

栏目是网站的常用功能,按照惯例栏目分常规栏目,单页栏目,链接栏目三种类型,这次主要做添加栏目控制器和栏目模型两个内容,控制器这里会用到特性路由,模型放入业务逻辑层中(网站计划分数据访问.业务逻辑和Web层,初步计划划分如下图). 一.栏目控制器 1.添加控制器 在Ninesky.Web项目项目Controller文件夹点右键 添加->新建项 在添加新项对话框中选择MVC控制器类,名称输入CategoryController. 自动生成代码如下 1 using System; 2 using Sy

如何优化网站关键词.

第一点:做好关键词分析(也叫关键词定位):这是进行SEO优化最重要的一环,关键词分析包括:关键词注重量分析.竞争对手分析.关键词与网站相关性分析.关键词安顿.关键词排行猜想. 第二点:网站架构分析:网站结构符合搜索引擎的爬虫喜欢则有利于SEO优化.网站架构分析包括:除去网站架构不良计划.完结树状目录结构.网站导航与衔接优化,网站计划的言语最好采好DIV+CSS样式,代码很有层次和简练. 第三点:与搜索引擎对话:向各大搜索引擎登入进口提交没有录入站点.在搜索引擎看SEO的效果,通过site:你的域

企业做网站的理由,让你惊讶

再好的环境都可能走错路,有些企业不愿意去改变,各种理由公司小,被骗过等等,那只是因为他们在逃避 ,难得那个企业刚刚做就是庞然大物嘛,难得那个企业不是颠簸过来的嘛,互联网是个趋势,但是也要从改变做起的,一个新的时代到来会把一大批不改变的去除掉,这是自然的规律,可能进化是有困难,不要再天天忙忙碌碌了,想想怎么去改吧 网站是社会的需要与客户的需要!不同的社会会有不同经营模式!古代不会有这样的社会模式!其实就是不同的时期,人类需要不同社会形势吧!天意如此!! 当今商界的竞争如狮虎争食,因此,只有让自己变

NopCommerce源码架构详解--初识高性能的开源商城系统cms

很多人都说通过阅读.学习大神们高质量的代码是提高自己技术能力最快的方式之一.我觉得通过阅读NopCommerce的源码,可以从中学习很多企业系统.软件开发的规范和一些新的技术.技巧,可以快速地提高我们的技术能力.所以我最近决定写一个“NopCommerce源码架构详解”的系列,来详细剖析NopCommerce的架构和原理. Nopcommerce主要用到的技术及特点: 1.Entity Framework 2.ASP.NET mvc 3.IoC容器+依赖注入(Autofac) 4.使用EF中的E

NopCommerce源码架构详解

NopCommerce源码架构详解--初识高性能的开源商城系统cms 很多人都说通过阅读.学习大神们高质量的代码是提高自己技术能力最快的方式之一.我觉得通过阅读NopCommerce的源码,可以从中学习很多企业系统.软件开发的规范和一些新的技术.技巧,可以快速地提高我们的技术能力.所以我最近决定写一个“NopCommerce源码架构详解”的系列,来详细剖析NopCommerce的架构和原理. Nopcommerce主要用到的技术及特点: 1.Entity Framework 2.ASP.NET 

Nopcommerce主要用到的技术及特点

很多人都说通过阅读.学习大神们高质量的代码是提高自己技术能力最快的方式之一.我觉得通过阅读NopCommerce的源码,可以从中学习很多企业系统.软件开发的规范和一些新的技术.技巧,可以快速地提高我们的技术能力.所以我最近决定写一个"nopCommerce源码架构详解"的系列,来详细剖析NopCommerce的架构和原理. Nopcommerce主要用到的技术及特点: 1.Entity Framework 2.ASP.NET mvc 3.IoC容器+依赖注入(Autofac) 4.使用