首页 > 其他分享 >counting-in-2d

counting-in-2d

时间:2022-11-06 18:24:44浏览次数:65  
标签:树状 线段 solution 2d counting 模板

【模板】二维数点

posted on 2022-10-23 13:50:24 | under 模板 | source

problem

给定一个二维平面,多次询问 $x\in[l_x,r_x],y\in[l_y,r_y]$ 的点有多少个。

solution 1(静态+在线):可持久化线段树

将 $x\in[1,l]$ 的点,放入第 $l$ 棵线段树中,询问时就是在第 $l_x-1,r_x$ 这两棵线段树上求区间和。显然可以用可持久化线段树维护。

solution 2(静态+离线):树状数组

将询问 $(l_x,r_x,l_y,r_y)$ 拆成 $(1,r_x,1,r_y)-(1,l_x-1,1,r_y)-(1,r_x,1,l_y-1)+(1,l_x-1,1,l_y-1)$。

不需要维护每个前缀,而只需要扫描线过去即可。树状数组。

标签:树状,线段,solution,2d,counting,模板
From: https://www.cnblogs.com/caijianhong/p/16863300.html

相关文章

  • 题解 [ABC259Ex] Yet Another Path Counting
    首先,每种颜色互不干扰,因此考虑对每种颜色统计答案。有两种解法:枚举起始格子\((x,y)\)和结尾格子\((z,w)\),由组合数易知共有\(\binom{z-x+w-y}{z-x}\)种路径。时间......
  • CF912D 小鱼仔 题解
    这是一个很邪门的贪心考虑到最终答案是每个正方形的贡献除以总的正方形个数,而正方形个数容易计算,那么只需最大化贡献。从题面给出的图易得每个点被覆盖的次数是一定的,我......
  • 第二十三章、2D与3D的转换
    一、2D  二、3D ......
  • Cocos2dx渲染---从DrawNode切入
    一、先从画一条线开始1.drawLine使用方法autoscene=Scene::create();Director::getInstance()->runWithScene(scene);autonode=DrawNode::create();......
  • 2D-iou用Java实现
    一、需求计算两个多边形iou的值,iou代表两图形的交集除以两图形的并集计算图形2的每个点距离图形1的最短距离二、依赖库<!--几何库--><dependency><groupId>org......
  • C - Counting Squares -- ATCODER
    C-CountingSquareshttps://atcoder.jp/contests/abc275/tasks/abc275_c参考:https://atcoder.jp/contests/abc275/submissions/36103954 思路首先不能使用暴力穷......
  • CF1622D. Shuffle 题解 组合数学/枚举
    题目链接:​​https://codeforces.com/problemset/problem/1622/D​​题目大意:给定一个长度为\(n\)的01字符串\(s\),你可以对这个字符串进行最多一次操作,该次操作需要选择......
  • Leetcode第1773题:统计匹配规则的物品数量(Counting items match a rule)
    解题思路根据题意进行模拟即可,利用哈希表把输入的ruleKey转换为items[i]的下标,然后再遍历一遍items,找出符合条件的物品数量。代码如下:classSolution{public:int......
  • 【CFgym102482D】Gem Island(生成函数)
    题意:有一个序列\(a_1,\cdots,a_n\),初始时它们全为\(1\)。进行\(d\)轮操作:每轮操作以正比于\(a\)的概率选择一个\(a_i\)加\(1\)。求最后\(a_1,\cdots,a_n\)中前......
  • 【AGC005D】_K Perm Counting(容斥,二分图,计数dp)
    首先正面做不太好做,考虑容斥。设\(f(m)\)表示排列中至少有\(m\)处\(|P_i-i|=k\)的方案数。那么答案就是\(\sum\limits_{i=0}^n(-1)^if(i)\)。原题可以看成一个二......