P2184 贪婪大陆

摘要:
P2184贪婪大陆使用一个树形阵列来记录前端长度,前端长度以总共个间隔结束,前端长度从总共个间隔开始。答案很明显。使用指针减少代码:#include#defineMAXN100010#definelobitsingnamespacestd;整数,m;整数tre_ h[MAXN],tre_ t[MAXN];voidadd{for*(a+i)+=val;}intget_sum{intans=0;对于{ans+=*(a+i);}返回者;}intmain(){scanf;while(m-){intopt,l,r;scanf,ifadd,add;elseprintf;}返回0;}
P2184 贪婪大陆

用树状数组记录前(i)长度共有(sum1)个区间结束,前(j)长度共用(sum2)个区间开始,答案显然为(sum2-sum1)

善用指针减少代码量:

#include <cstdio>
#define MAXN 100010
#define lowbit(x) ((x)&(-(x)))
using namespace std;
int n,m;
int tre_h[MAXN], tre_t[MAXN];
void add(int *a, int x, int val){
    for(register int i=x;i<=n;i+=lowbit(i))
        *(a+i)+=val;
}
int get_sum(int *a, int x){
    int ans=0;
    for(register int i=x;i>0;i-=lowbit(i)){
        ans+=*(a+i);
    }
    return ans;
}
int main()
{
    scanf("%d %d", &n, &m);
    while(m--){
        int opt,l,r;scanf("%d %d %d", &opt, &l, &r);
        if(opt==1) add(tre_h, l, 1),add(tre_t, r, 1);
        else printf("%d
", get_sum(tre_h, r)-get_sum(tre_t, l-1));
    }
    return 0;
}

免责声明:文章转载自《P2184 贪婪大陆》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Cloudera运维算法分析思维分析,以循环赛日程表为例下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

CSS-顶部滚动进度条

Documentbody{background-image:linear-gradient(torighttop,#f0050%,#ece50%);background-repeat:no-repeat;height:300vh;position:relative;background-size:100%calc(100%-100vh+5px);}body:...

(二)Jenkins配置主从节点实例

4.从节点配置和相关配置中从节点机创建jenkins用户,并从一些环境配置中创建jenkings用户的ssh密钥,用于指定上述配置界面的ssh启动模式;在配置启动模式和项目源代码管理中从远程仓库获取源代码;创建Jenkins用户并使用root登录到远程子节点计算机。#adduserjenkins#passwdjenkins生成Jenkins用户的ssh密钥。...

Dto和Entity如何优雅的相互转换

什么是Dto,Entity,用来干什么?这个时候就有一个麻烦事,Entity和Dto的互转。通常的转换方法有两个途径,一个是通过反射的方式,来进行对象属性的复制;另一种是,通过硬编码进行对象属性的赋值;1.在service层中添加实体类转换函数@ServicepublicMyEntityService{publicSomeDtogetEntityById{S...

Java 安全之:csrf攻击总结

最近,我在维护一些旧项目。在调试期间,我发现请求被反复拒绝。我仔细查看了项目的源代码,发现存在csrftoken验证。我借此机会了解了csrf攻击,并将其总结成一篇论文。受攻击的网站无法阻止攻击。在整个过程中,攻击者无法获取受害者的登录凭据,只能“冒充”。CSRF攻击成功,因为服务器将攻击者发送的请求误认为是用户的请求。服务器通过验证请求是否携带正确的令牌来...

安装pygame

在python3中安装pygame库。一段时间后,您可以看到安装成功,并且可以导入pygame...

最新版Swagger 3升级指南和新功能体验!

因此,本期将为您带来一篇关于Swagger最新版本的文章。本文将向您展示Swagger最新版本的变化?如何将旧版本的Swagger升级到新版本?Swagger是一个用于生成、描述和调用RESTful接口的Web服务。Swagger 2.9.2的使用分为以下四个步骤:添加依赖项、启用Swagger功能、配置Swagger文档摘要信息和调用接口访问。让我们分别来...