zoukankan      html  css  js  c++  java
  • vijos 1512

    SuperBrother打鼹鼠

    背景

    SuperBrother在机房里闲着没事干(再对比一下他的NOIP,真是讽刺啊......),于是便无聊地开始玩“打鼹鼠”......

    描述

    在这个“打鼹鼠”的游戏中,鼹鼠会不时地从洞中钻出来,不过不会从洞口钻进去(鼹鼠真胆大……)。洞口都在一个大小为n(n<=1024)的正方形中。这个正方形在一个平面直角坐标系中,左下角为(0,0),右上角为(n-1,n-1)。洞口所在的位置都是整点,就是横纵坐标都为整数的点。而SuperBrother也不时地会想知道某一个范围的鼹鼠总数。这就是你的任务。

    格式

    输入格式

    每个输入文件有多行。

    第一行,一个数n,表示鼹鼠的范围。

    以后每一行开头都有一个数m,表示不同的操作:
    m=1,那么后面跟着3个数x,y,k(0<=x,y<n),表示在点(x,y)处新出现了k只鼹鼠;
    m=2,那么后面跟着4个数x1,y1,x2,y2(0<=x1<=x2<n,0<=y1<=y2<n),表示询问矩形(x1,y1)-(x2,y2)内的鼹鼠数量;
    m=3,表示老师来了,不能玩了。保证这个数会在输入的最后一行。

    询问数不会超过10000,鼹鼠数不会超过maxlongint。

    输出格式

    对于每个m=2,输出一行数,这行数只有一个数,即所询问的区域内鼹鼠的个数。

    样例1

    样例输入1[复制]

     
    4
    1 2 2 5
    2 0 0 2 3
    3

    样例输出1[复制]

     
    5

    限制

    各个测试点1s

    提示

    水题一道。

    所有数据均为随机生成,包括样例……

    来源

    gnaggnoyil

    一眼看去就是水题,然而我竟然在矩形的区间上出错。代码如下:

    #include<cstdio>
    #include<iostream>
    using namespace std;
    int n,m,c[1030][1030];
    inline int lowbit(int x)
    {return x&(-x);}
    inline void add(int x,int y,int z)
    {
    	for(int i=x;i<=n;i+=lowbit(i))
    		for(int j=y;j<=n;j+=lowbit(j))
    			c[i][j]+=z;
    }
    inline int sum(int x,int y)
    {
    	int res=0;
    	for(int i=x;i>0;i-=lowbit(i))
    		for(int j=y;j>0;j-=lowbit(j))
    			res+=c[i][j];
    	return res;
    }
    int main()
    {
    	scanf("%d",&n);
    	for(;;){
    		scanf("%d",&m);
    		if(m==3)break;
    		if(m==1){
    			int x,y,z;
    			scanf("%d%d%d",&x,&y,&z);
    			add(x+1,y+1,z);
    		}
    		else{
    			int x1,y1,x2,y2;
    			scanf("%d%d%d%d",&x1,&y1,&x2,&y2);
    			printf("%d
    ",sum(x2+1,y2+1)-sum(x1,y2+1)-sum(x2+1,y1)+sum(x1,y1));
    		}
    	}
    	return 0;
    }
    


  • 相关阅读:
    反转链表 --剑指offer
    链表的倒数第K个节点
    打印1到最大的n位数----java实现
    Permutations java实现
    Generate Parentheses java实现
    Binary Tree Level Order Traversal java实现
    hadoop中日志聚集问题
    PIG的配置
    hadoop2.20.0集群安装教程
    Map/Reduce之间的Partitioner接口
  • 原文地址:https://www.cnblogs.com/keshuqi/p/5957779.html
Copyright © 2011-2022 走看看