#10115. 「一本通 4.1 例 3」校门外的树
描述
校门外有很多树,有苹果树,香蕉树,有会扔石头的,有可以吃掉补充体力的……
如今学校决定在某个时刻在某一段种上一种树,保证任一时刻不会出现两段相同种类的树,现有两个操作:
K=1,K=1,读入l、r表示在区间[l,r]中种上一种树,每次操作种的树的种类都不同
K=2,读入l,r表示询问l~r之间能见到多少种树
(l,r>0)
格式
输入格式
第一行n,m表示道路总长为n,共有m个操作
接下来m行为m个操作
输出格式
对于每个k=2输出一个答案
样例1
样例输入1
5 4
1 1 3
2 2 5
1 2 4
2 3 5
Copy
样例输出1
1
2
Copy
限制
1s
提示
范围:20%的数据保证,n,m<=100
60%的数据保证,n <=1000,m<=50000
100%的数据保证,n,m<=50000
#include <bits/stdc++.h>
using namespace std;
int n, m, x, y, z;
int a[2][1100000], b[1100000];
#define Q(x) (x)&(-x)
void add(int z, int x, int y) {for (int i = x; i <= n; i += Q(i))a[z][i] += y;
}
int ans(int q, int x) {int z = 0;for (int i = x; i > 0; i -= Q(i))z += a[q][i];return z;
}
int main() {cin >> n >> m;while (m--) {cin >> z;if (z == 1) {cin >> x >> y;add(0, x, 1);add(1, y, 1);} else {cin >> x >> y;int maxx = 0;cout << ans(0, y) - ans(1, x - 1) << endl;}}return 0;
}/*1 1 1 1 11 1 13 3 33 312221122*/
#10115. 「一本通 4.1 例 3」校门外的树相关推荐
- Loj 10115 「一本通 4.1 例 3」校门外的树 (树状数组)
题目链接:https://loj.ac/problem/10115 题目描述 原题来自:Vijos P1448 校门外有很多树,学校决定在某个时刻在某一段种上一种树,保证任一时刻不会出现两段相同种类的 ...
- 树状数组(二)——#10115. 「一本通 4.1 例 3」校门外的树
题目链接:https://loj.ac/problem/10115 解题思路 一开始误会了重复种树的意思,以为是线段树染色QAQ,后来知道了重复种树是指该位置可以种无限棵树,用树状数组就能解决.我们用 ...
- 「一本通 4.1 例 3」校门外的树 (loj10115)
题目描述 原题来自:Vijos P1448 校门外有很多树,学校决定在某个时刻在某一段种上一种树,保证任一时刻不会出现两段相同种类的树,现有两种操作: K=1,读入 l,r表示在 l 到 r 之间种上 ...
- 【C++】「一本通 1.1 例 4」加工生产调度
「一本通 1.1 例 4」加工生产调度 [来源] [题目描述] [输入格式] [输出格式] [输入样例] [输出样例] [数据范围] [解析] [代码] [来源] 一本通题库-1425 LibreOJ ...
- LibreOJ10082. 「一本通 3.3 例 1」Word Rings【二分+SPFA】
10082. 「一本通 3.3 例 1」Word Rings [题目描述] 传送门 [题解] 将一个字符串看成一条边,字符两端的字符看成节点,长度看成权值.二分枚举答案,最后SPFA刷正环,因为只要有 ...
- 【C++】「一本通 1.1 例 2」种树
「一本通 1.1 例 2」种树 [来源] [题目描述] [输入格式] [输出格式] [输入样例] [输出样例] [解析] [代码] [来源] 一本通题库-1423 LibreOJ-10001 vjud ...
- #10001. 「一本通 1.1 例 2」种树
#10001. 「一本通 1.1 例 2」种树 满足n个区间种树的要求,求最少种多少棵数 思路 按照区间的尾巴来排序,因为如果区间有重叠的种在第一个区间的尾巴可以使得种树更少,所有每次始从尾巴开始种树 ...
- 【C++】「一本通 1.1 例 5」智力大冲浪
「一本通 1.1 例 5」智力大冲浪 [来源] [题目描述] [输入格式] [输出格式] [输入样例] [输出样例] [数据范围] [解析] [代码] [来源] 一本通题库-1426 LibreOJ- ...
- #10003. 「一本通 1.1 例 4」加工生产调度(贪心)
加工生产调度 题目描述 某工厂收到了n个产品的订单,这n个产品分别在A.B两个车间加工,并且必须先在A车间加工后才可以到B车间加工. 某个产品i在A.B两车间加工的时间分别为Ai.Bi.询问怎样安排这 ...
最新文章
- 白话Elasticsearch56-数据建模之 Path Hierarchy Tokenizer 对文件系统进行数据建模以及文件搜索
- C++模板的概念<>(泛型编程)
- 每日程序C语言14-小球反弹高度问题
- java 循环查询list_Java用list储存,遍历,查询指定信息过程详解
- 程序员经常说的「设计模式」到底是什么?
- taxtable java_C语言计算个人所得税问题代码及解析
- 5月首批国产游戏版号下发:又一大波游戏要来了
- 文件夹被隐藏生成同名.exe文件的文件夹图标病毒你还不会解决?
- 绩效考核如何尽量公正
- 简单实现SYN端口扫描
- 爬取校花图片保存到本地文件夹下(requests+re)
- 新生宝宝取名大全:带梓字寓意大气的男孩名字
- react 中样式写法
- java替换一个反斜杠_java反斜杠替换
- jdk、maven、idea安装配置
- HarmonyOS系统中内核实现智慧物流控制的方法
- 把excel表格批量转为csv
- 中间件是什么,常用的中间件有哪些
- 老子《道德经》第四十二章
- Redis命令详解:Connection