/*
不要思维定视 盯着线段树维护l r 的ans不放
显然没法区间合并 换一种思路
如果打暴力的话 O(nm) 每次询问 扫一遍之前所有的修改
有交点则说明种数++
接下来考虑如何优化
我们把每个区间看做(l,r)的坐标内的点 然后查询区间L<=li<=R L<=ri<=R内有多少点
这样的查询在二维坐标里不会查(反正我不会..)将坐标轴转化成两个一维的线段
这样我们就又面临一个问题 会有重复
那就用排除法 总数-不重复区间的 又因为保证了 r>=l
所以l轴的[r+1,n] +r 轴的[1,l-1] 恰好不重复且覆盖了所有多出来的点
*/
#include<iostream>
#include<cstdio>
#include<cstring>
#define maxn 100010
using namespace std;
int n,m,tl[maxn],tr[maxn],sum;
void Add_treel(int pos,int data)
{
while(pos<=n)
{
tl[pos]+=data;
pos+=pos&(-pos);
}
}
void Add_treer(int pos,int data)
{
while(pos<=n)
{
tr[pos]+=data;
pos+=pos&(-pos);
}
}
int find_treel(int pos)
{
int ret=;
while(pos)
{
ret+=tl[pos];
pos-=pos&(-pos);
}
return ret;
}
int find_treer(int pos)
{
int ret=;
while(pos)
{
ret+=tr[pos];
pos-=pos&(-pos);
}
return ret;
}
int main()
{
freopen("greedisland.in","r",stdin);
freopen("greedisland.out","w",stdout);
scanf("%d%d",&n,&m);
int x,y,z;
for(int i=;i<=m;i++)
{
scanf("%d%d%d",&x,&y,&z);
if(x==){Add_treel(y,);Add_treer(z,);sum++;}
if(x==)
{
int s1=find_treel(n)-find_treel(z);
int s2=find_treer(y-);
printf("%d\n",sum-s1-s2);
}
}
return ;
}

cogs 1008 贪婪大陆的更多相关文章

  1. cogs——1008. 贪婪大陆(清华巨佬代码)——树状数组

    1008. 贪婪大陆 ★★   输入文件:greedisland.in   输出文件:greedisland.out   简单对比时间限制:1 s   内存限制:128 MB 试题四:贪婪大陆  [题 ...

  2. Cogs 1008. 贪婪大陆(树状数组)

    贪婪大陆 难度等级 ★★ 时间限制 1000 ms (1 s) 内存限制 128 MB 测试数据 10 简单对比 输入文件:greedisland.in 输出文件:greedisland.out 简单 ...

  3. COGS1008. 贪婪大陆[树状数组 模型转换]

    1008. 贪婪大陆 ★★   输入文件:greedisland.in   输出文件:greedisland.out   简单对比时间限制:1 s   内存限制:128 MB 试题四:贪婪大陆  [题 ...

  4. P2184 贪婪大陆

    P2184 贪婪大陆   题目背景 面对蚂蚁们的疯狂进攻,小FF的Tower defence宣告失败……人类被蚂蚁们逼到了Greed Island上的一个海湾.现在,小FF的后方是一望无际的大海, 前 ...

  5. 洛谷 P2184 贪婪大陆 解题报告

    P2184 贪婪大陆 题目背景 面对蚂蚁们的疯狂进攻,小\(FF\)的\(Tower\) \(defence\)宣告失败--人类被蚂蚁们逼到了\(Greed\) \(Island\)上的一个海湾.现在 ...

  6. AC日记——贪婪大陆 洛谷 P2184

    贪婪大陆 思路: 树状数组: 跪烂.. 代码: #include <bits/stdc++.h> using namespace std; #define maxn 100005 int ...

  7. 【洛谷P2184】贪婪大陆

    贪婪大陆 题目链接 对于一个区间[l,r],右端点在l左边即[1,l-1]中的区间与区间[l,r]没有交集, 左端点在r右边即[r,n]中的区间与区间[l,r]没有交集, 其余区间必与[l,r]有交集 ...

  8. luoguP2184 贪婪大陆 题解(树状数组)

    P2184 贪婪大陆  题目 其实很容易理解就是询问一段区间内有多少段不同的区间 然后再仔细思索一下会发现: 1.只要一个区间的开头在一个节点i的左边,那么这个区间包含在区间1~i中. 2.只要一个区 ...

  9. 贪婪大陆(cogs 1008)

    [题目描述] 面对蚂蚁们的疯狂进攻,小FF的Tower defense宣告失败……人类被蚂蚁们逼到了Greed Island上的一个海湾.现在,小FF的后方是一望无际的大海,前方是变异了的超级蚂蚁. ...

随机推荐

  1. 【HAOI2007】理想的正方形

    [问题描述] 有一个a*b的整数组成的矩阵,现请你从中找出一个n*n的正方形区域,使得该区域所有数中的最大值和最小值的差最小. [输入] 第一行为3个整数,分别表示a,b,n的值第二行至第a+1行每行 ...

  2. bash shell学习-shell script基础 (笔记)

    A chain no stronger than its weakest link. "一着不慎,满盘皆输" 参考资料:鸟哥的Linux私房菜 基础学习篇(第三版)  Linux ...

  3. K-means聚类

    聚类算法,无监督学习的范畴,没有明确的类别信息. 给定n个训练样本{x1,x2,x3,...,xn} kmeans算法过程描述如下所示: 1.创建k个点作为起始质心点,c1,c2,...,ck 2.重 ...

  4. ThinkPHP 发送post请求

    function post($url, $param=array()){ if(!is_array($param)){ throw new Exception("参数必须为array&quo ...

  5. DCI

    理论: 某个data,在一个特定的场景中,以某个角色role,来与该场景中的其他角色进行交互.这个过程要以代码的方式表达出来,他要求data本身不具备交互行为, 有交互行为的是角色,当一个data没有 ...

  6. NOIP[2015] 运输计划

    传送门 题目描述 Description 公元 2044 年,人类进入了宇宙纪元.L 国有 n 个星球,还有 n−1 条双向航道,每条航道建立在两个星球之间,这 n−1 条航道连通了 L 国的所有星球 ...

  7. 001Spring4.2基本环境搭建

    1:工程目录以及依赖jar包如下,如果缺少某些jar包在weblogic控制台下面会有提示 2:applicationContext.xml配置文件 <?xml version="1. ...

  8. PYTHON--定期监测服务器端口,并将结果写入MYSQL

    定时监测服务器端口,然后将结果入写数据库. 监测用NC命令,入库就用PYTHON的MYSQL模块 再调一个基于函数的多线程... 妥妥的.. 是网上两个功能的合成.. 俺不生产代码,俺只是BAIDU的 ...

  9. gcc编译动态和静态链接库

    我们通常把一些公用函数制作成函数库,供其它程序使用.函数库分为静态库和动态库两种.静态库在程序编译时会被连接到目标代码中,程序运行时将不再需要该静态库.动态库在程序编译时并不会被连接到目标代码中,而是 ...

  10. tinyxml开源库的基本用法

    最近项目中的某个功能需要写xml,由于项目中已经引入了tinyxml,所以不再寻找其他开源库. 前提:你得有个xml对象,声明tinyxml的对象:基于tinyxml的内存管理,TiXmlDocume ...