Arkady plays Gardenscapes a lot. Arkady wants to build two new fountains. There are n available fountains, for each fountain its beauty and cost are known. There are two types of money in the game: coins and diamonds, so each fountain cost can be eit…
poj2155:http://poj.org/problem?id=2155 题意;同上一遍随笔. 题解:这里用二维线段树打了一发.第一次学习别人的代码.才学的.这种树套树的程序,确实很费脑子,一不小心就会晕了,而且这次是用省空间的方法写的. #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> using namespace std; ][]; int n,ans…
浅谈树状数组与线段树:https://www.cnblogs.com/AKMer/p/9946944.html 题目传送门:https://www.lydsy.com/JudgeOnline/problem.php?id=2028 这题一开始我只会平衡树写法,打死都想不出线段树怎么写.然后偷偷去瞄一眼题解,里面说到了线段树染色.然后就一直往这个方向想.发现这就是区间赋值,对于第\(i\)个区间全部赋值成\(i\)就行了--然后对于每个区间有多少个不同的颜色段怎么更新又成了问题.我们记录一下每个区…
题意:在1到n的气球中,在不同的区域中涂颜色,问每个气球涂几次. #include<cstdio>int num[100010];int main(){ int n, x, y;; while (scanf("%d", &n), n) {  for (int i = 0; i < n; i++)  {   scanf("%d%d", &x, &y);   num[x] += 1; num[y + 1] -= 1;  }  f…
#include<stdio.h> #include<string.h> ]; int main() { int n,i; int a,b; while(scanf("%d",&n)!=EOF&&n) { memset(f,,sizeof(f)); ;i<n;i++) { scanf("%d%d",&a,&b); f[a]++; f[b+]--; } ; ;i<n;i++) { m+=f[i…
 FZU 2105  Digits Count Time Limit:10000MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I64u Practice Description Given N integers A={A[0],A[1],...,A[N-1]}. Here we have some operations: Operation 1: AND opn L R Here opn, L and R are intege…
转载自:http://blog.csdn.net/qq_18455665/article/details/50989113 前言 首先说说出处: 清华大学 张昆玮(zkw) - ppt <统计的力量> 本文(辣鸡)编辑:BeiYu 写这篇博客的原因:  1.zkw线段树非递归,效率高,代码短  2.网上关于zkw线段树的讲解实在是太少了  3.个人感觉很实用 更新日志 20160327-Part 1(zkw线段树的建立) 20160329-Part 2(单点操作) 20160329-Part…
线段树版的海报 实际上这个与普通的线段树相差不大,只是貌似数据太水,暴力都可以过啊 本来以为要离散的,结果没打就A了 #include<iostream> #include<cstdio> #include<cstring> using namespace std; const int Max=40000001; struct Node{ int x,y,id; }node[10001]; int n,m,sum[Max],lazy[Max],tot[1001]; vo…
LOJ 洛谷 最基本的思路同BZOJ2115 Xor,将图中所有环的异或和插入线性基,求一下线性基中数的异或最大值. 用bitset优化一下,暴力的复杂度是\(O(\frac{qmL^2}{w})\)的.(这就有\(70\)分?) 因为最开始的图是连通的,可以先求一个\(dis[i]\)表示\(1\)到\(i\)的异或和.每次加边会形成环,就是在线性基中插入一个元素. 因为有撤销,所以线段树分治就好了.线段树上每个节点开一个线性基.同一时刻只需要\(\log\)个线性基的空间. 复杂度\(O(\…
传送门 题意: 庭院中有 n 个围栏,每个围栏上都被涂上了不同的颜色(数字表示): 有 m 条指令,每条指令给出一个整数 x ,你要做的就是将区间[ x第一次出现的位置 , x最后出现的位置 ]中的围栏 全部涂成 x ,经过 m 次操作后,输出每个围栏的涂色情况: 题解: 比赛的时,在读完题后,一瞬间,想到了线段树的区间更新,懒惰标记,but 我已经好久好久没写过线段树的代码了(嫌代码太长,逃): 所以,比赛时,就不了了之,去看其他题了: 今天,温习了一下线段树的用法,重新思考了本题的解题思路,…