T7
#include<iostream>
#include<cstring>
#include<cstdio>
#include<algorithm>
using namespace std;
int s,n;
int op;
const int maxn=2e6+;
int c[maxn];
struct SS
{
int lowbit(int x)
{
return x&(-x);
}
void add(int x,int w)
{
for(;x<=n;x+=lowbit(x))
{
c[x]+=w;
}
}
int sum(int x)
{
int res=;
for(;x;x-=lowbit(x))
{
res+=c[x];
}
return res;
}
}XX;
int ans[maxn]; struct node
{
int id;
int op;
int x1,x2,y1,y2;
bool operator <(const node &x)const
{
if(x1==x.x1)
{
return op<x.op;
}
return x1<x.x1;
}
}way[maxn],a[maxn];
void cdq(int l,int r)
{
if(l==r)
{
return ;
}
int mid=(l+r)>>;
cdq(l,mid);
cdq(mid+,r);
int cnt=;
for(int i=l;i<=mid;i++)
{
if(way[i].op==)
{
a[cnt++]=way[i];
}
}
for(int i=mid+;i<=r;i++)
{
if(way[i].op==)
{
a[cnt++]=way[i];
a[cnt-].op=;
a[cnt++]=way[i];
a[cnt-].op=;
a[cnt-].x1=way[i].x2;
}
}
sort(a,a+cnt);
for(int i=;i<cnt;i++)
{
if(a[i].op==)
{
ans[a[i].id]-=(XX.sum(a[i].y2)-XX.sum(a[i].y1-));
}
else
if(a[i].op==)
{
XX.add(a[i].y1,a[i].x2);
}
else
{
ans[a[i].id]+=(XX.sum(a[i].y2)-XX.sum(a[i].y1-));
}
}
}
inline int read()
{
int x=,f=;
char ch=getchar();
while(isdigit(ch)== && ch!='-')ch=getchar();
if(ch=='-')f=-,ch=getchar();
while(isdigit(ch))x=x*+ch-'',ch=getchar();
return x*f;
}
int main()
{
memset(c,,sizeof(c));
memset(ans,,sizeof(ans));
s=read();
n=read();
int cnt=;
int tot=;
while(scanf("%d",&op)&&op!=)
{
if(op==)
{
int x,y,z;
x=read();
y=read();
z=read();
way[++cnt].op=op;
way[cnt].id=-;
way[cnt].x1=x;
way[cnt].y1=y;
way[cnt].x2=z;
way[cnt].y2=; }
if(op==)
{
int x1,x2,y1,y2;
x1=read();
y1=read();
x2=read();
y2=read();
way[++cnt].op=op;
way[cnt].id=++tot;
way[cnt].x1=x1;
way[cnt].x2=x2;
way[cnt].y1=y1;
way[cnt].y2=y2;
}
}
cdq(,cnt);
for(int i=;i<=tot;i++)
{
printf("%d\n",ans[i]);
//cout<<ans[i]<<endl;
}
return ;
}
T7的更多相关文章
- [archlinux] 迁移T7从T460s到T470
这已经不是第一次做OS的迁移了,T7早已经迁移过多台设备了.所以,其实只需要如下三步: 1. rsync 我一直有全系统备份的习惯,T7一直会不定期的全系统rsync到Tstation上面去.所以我 ...
- 面试一个百度T7程序员,一道简单的题没答上来!网友却都在吐槽面试官!
程序员面试时都考些什么? 一个面试官得意洋洋地说自己面了一个百度T7,出了一道coding题,结果对方连最长上升子序列都写不出来. 楼主本想嘲弄一下百度T7的代码水平低,没想到网友们炸开了锅,纷纷 ...
- 套题T7
P4712 铺瓷砖 时间: 1000ms / 空间: 65536KiB / Java类名: Main 描述
- 2019 Multi-University Training Contest 3 T7 Find the answer
Find the answer Time Limit: 4000/4000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Tota ...
- C#中如何给Excel添加水印
我们知道Microsoft Excel并没有内置的功能直接给Excel表添加水印,但是其实我们可以用其他变通的方式来解决此问题,如通过添加页眉图片或艺术字的方法来模仿水印的外观.所以在这篇文章中,我将 ...
- JavaWeb——Listener
一.基本概念 JavaWeb里面的listener是通过观察者设计模式进行实现的.对于观察者模式,这里不做过多介绍,大概讲一下什么意思. 观察者模式又叫发布订阅模式或者监听器模式.在该模式中有两个角色 ...
- java web学习总结(五) -------------------servlet开发(一)
一.Servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术. Sun公司在其API中提供了一个servlet接口,用户若想用发一个动态web资源(即开发一个Java程序向 ...
- Android—关于自定义对话框的工具类
开发中有很多地方会用到自定义对话框,为了避免不必要的城府代码,在此总结出一个工具类. 弹出对话框的地方很多,但是都大同小异,不同无非就是提示内容或者图片不同,下面这个类是将提示内容和图片放到了自定义函 ...
- 我的MYSQL学习心得(九) 索引
我的MYSQL学习心得(九) 索引 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据类 ...
随机推荐
- spring5 源码深度解析----- Spring事务 是怎么通过AOP实现的?(100%理解Spring事务)
此篇文章需要有SpringAOP基础,知道AOP底层原理可以更好的理解Spring的事务处理. 自定义标签 对于Spring中事务功能的代码分析,我们首先从配置文件开始人手,在配置文件中有这样一个配置 ...
- 注册中心nacos完整部署及与eureka区别
1. 场景描述 nacos最近用的比较多,介绍下nacos及部署吧,刚看了下以前写过类似的,不过没写如何部署及与eureka区别,只展示了效果,补补吧. 2.解决方案 2.1 nacos与eureka ...
- TP框架配合jquery进行3种方式的多图片上传
用的TP5.1框架+jquery 一 使用form表单方式进行多图片上传 html代码: <form action="../admin/admin/cs" enctype=& ...
- LeetCode_225-Implement Stack using Queues
使用队列实现栈的操作 class MyStack { public: /** Initialize your data structure here. */ MyStack() { } /** Pus ...
- springboot 快速开发的定制补充
增强 SpringBoot 快速开发工具 项目地址:https://gitee.com/sanri/web-ui 优点:这是一个 web 通用配置的组件,即插即用,可用于新项目或私活.是对 Sprin ...
- Linux重要配置文件
目录 简介 0x01 系统重要文件 0x02 用户重要文件 0x03 重要日志文件 本教程概述 本课时学习Linux系统中重要的配置文件. 用到的工具 SshClient Ubuntu 标签 Linu ...
- PHP stream_wrapper_register
<?php /** * 引用:http://php.net/manual/en/function.stream-wrapper-register.php * 把变量当成文件读写的协议 * * C ...
- webapck 按需加载及版本控制问题
在启用webpack的懒加载(按需加载)后,我们会遇到要解决缓存的问题. 解决缓存问题有几种方法: 第一种就是加个hash值.便每次修改后所编译后的文件名都不一样.这样能达到预期解决缓存的效果.具体设 ...
- [CF722C] Destroying Array
C. Destroying Array time limit per test 1 second memory limit per test 256 megabytes input standard ...
- JavaScript如何工作:垃圾回收机制 + 常见的4种内存泄漏
原文地址: How JavaScript works: memory management + how to handle 4 common memory leaks 本文永久链接:https://d ...