比赛 Asm.Def战记之圣地亚哥“杯2015 评测结果 WWWWWWWETT
题目名称 Asm.Def的命令 最终得分 0
用户昵称 高哥 运行时间 27.394 s
代码语言 C++ 内存使用 1.89 MiB
提交时间 2015-10-31 11:00:33
显示代码纯文本
#include <iostream>
#include <cstdio>
#include <cstring>
#include <cmath>
#include <algorithm>
#define lowbit(x) x&-x
#define N 100010
using namespace std;
int n,m;
int cx[N],cy[N];
void add(int* c,int d,int x)
{
	//cout<<d<<endl;
	while(x>0)
	{
		c[x]+=d;
		x-=lowbit(x);
	}
}
int query(int* c,int u)
{
	int ans=0;
	while(u<=n)
	{
		ans+=c[u];
		u+=lowbit(u);
	}
	return ans;
}
void work()
{
	scanf("%d%d",&n,&m);
	for(double i=1.0;i<=n;i+=1.0)
	{
	  add(cy,i,i);
	  add(cy,-i,i-1);
	}
	int q,l,r,u;
	int dx,dy;
	for(int i=1;i<=m;i++)
	{
		scanf("%d",&q);
		if(q==1)
		{
			scanf("%d%d%d%d",&l,&r,&dx,&dy);
			cout<<dx<<' '<<dy<<endl;
			add(cx,dx,r);
			add(cx,-dx,l-1);
			add(cy,dy,r);
			add(cy,-dy,l-1);
		}
		else if(q==0)
		{
			scanf("%d",&u);
			int x=query(cx,u);
			int y=query(cy,u);
			printf("%d.0 %d.0\n",x,y);
			
		}
		else
		{
			printf("caonima!\n");
		}
	}
}
int main()
{
	freopen("asm_command.in","r",stdin);
	freopen("asm_command.out","w",stdout);
	work();
	return 0;
}
/*
5 6
1 1 3 -2 0
0 2
1 2 4 -1 5
0 1
0 2
0 5

*/