hdu-4533-威威猫系列故事――晒被子----
来源:互联网 发布:网络安全技术产品 编辑:程序博客网 时间:2024/04/30 00:56
http://blog.csdn.net/dongdongzhang_/article/details/8866470
#include<stdio.h> #include<string.h> #include<stdlib.h> #include<algorithm> #include<iostream>using namespace std; #define ll __int64#define N 200005ll a[N],b[N],c[N];ll d,e,f,g;void add(ll s,ll t,ll A,ll B,ll C){a[s]+=A;a[t+1]-=A;b[s]+=B;b[t+1]-=B;c[s]+=C;c[t+1]-=C;}void insert(ll x1,ll y1,ll x2,ll y2){ll t1=max(x1,y1);ll t2=min(x2,y2);ll t3=max(x2,y2);if(t2>t1)add(t1+1,t2,1,-(x1+y1),x1*y1);else t2=t1;if(y2>x2)add(t2+1,t3,0,x2-x1,-y1*(x2-x1));else if(x2>y2)add(t2+1,t3,0,y2-y1,-x1*(y2-y1));add(t3+1,200000,0,0,(x2-x1)*(y2-y1));}int main(){int t;cin>>t;while(t--){int n;cin>>n;memset(a,0,sizeof(a));memset(b,0,sizeof(b));memset(c,0,sizeof(c));while(n--){scanf("%I64d%I64d%I64d%I64d",&d,&e,&f,&g);insert(d,e,f,g);}int i;for(i=1;i<=200001;i++){a[i]+=a[i-1];b[i]+=b[i-1];c[i]+=c[i-1];}int k;cin>>k;while(k--){ll h;scanf("%I64d",&h);printf("%I64d\n",h*h*a[h]+h*b[h]+c[h]);}}}
0 0
- hdu-4533-威威猫系列故事――晒被子----
- HDU 4533 威威猫系列故事――晒被子 (线段树)
- hdu 4533 威威猫系列故事――晒被子(二重等差数列+差分前缀和)
- HDU 4533 威威猫系列故事——晒被子
- Hdu 4533 威威猫系列故事——晒被子
- hdu 4533 威威猫系列故事——晒被子
- hdu 4533 威威猫系列故事——晒被子
- HDU 4533 威威猫系列故事――晒被子(线段树区间更新+分情况推公式)
- HDU4533 威威猫系列故事――晒被子
- hdu 4533 威威猫系列故事——晒被子(两种方法)
- hdu 4533 威威猫系列故事——晒被子(成段更新)
- hdu 4533 威威猫系列故事——晒被子(线段树 成端更新)
- HDU-4533:威威猫系列故事——晒被子(线段树延迟更新+推公式)
- HDOJ 4533 威威猫系列故事——晒被子
- 威威猫系列故事——晒被子
- hdu4533-威威猫系列故事——晒被子
- hdu4533 威威猫系列故事——晒被子
- hud 2013腾讯编程马拉松 威威猫系列故事——晒被子
- Netty源码解读(三)Channel与Pipeline
- 利用正则表达式限制输入到文本框的值
- 利用Mono.Cecil动态修改程序集来破解商业组件
- Date对象的toLocalString()方法的用法
- 深入理解SELinux SEAndroid(第一部分)
- hdu-4533-威威猫系列故事――晒被子----
- Android SDK更新以及ADT更新出现问题的解决办法
- UVA - 11991 Easy Problem from Rujia Liu?
- projecteuler No.145 How many reversible numbers are there below one-billion?
- Netty源码解读(四)Netty与Reactor模式
- C/C++用移位实现乘除法运算,提高运行效率
- 美玉无瑕--美家手动铭玉博物馆
- c语言基础之指针
- cvCreateTrackbar