#include<iostream> #include<algorithm> #include<cstring> using namespace std; ; int a[N]; int tr[N]; int n,m; int l,r; int lowbit(int x) { return x& -x; } void add(int x,int c) { for(int i=x;i<=n;i+=lowbit(i)) tr[i]+=c; } int sum(…
题意: 给一个数列,一些询问,问你$[l,r]$之间不同的数字之和 题解: 11年多校的题,现在属于"人尽皆知傻逼题" 核心思想在于: 对于一个询问$[x,R]$ 无论$x$是什么,整个数列中,对于答案有贡献的,只有每种数字中,$R$左边最近的一个 对于数列$1,1,2,2,3,3,4,4,1,1,2,2,4,3,4,5,5,P...$和       $0,0,0,0,0,0,0,0,0,1,0,2,0,3,4,0,5,P...$ 只要右边界保持在P-1,询问结果是等价的 具体操作就是…
1770: 按钮控制彩灯实验 Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 194  Solved: 65[Submit][Status][Web Board] Description 应 教学安排,yy又去开心的做电学实验了.实验的内容分外的简单一串按钮通过编程了的EEPROM可以控制一串彩灯.然而选择了最low的一种一对一的控制 模式,并很快按照实验指导书做完实验的yy马上感觉到十分无趣.于是他手指在一排按钮上无聊的滑来滑去,对应的彩灯也不断的…
1770: 按钮控制彩灯实验 Submit Page   Summary   Time Limit: 1 Sec     Memory Limit: 128 Mb     Submitted: 341     Solved: 127 Description 应教学安排,yy又去开心的做电学实验了.实验的内容分外的简单一串按钮通过编程了的EEPROM可以控制一串彩灯.然而选择了最low的一种一对一的控制模式,并很快按照实验指导书做完实验的yy马上感觉到十分无趣.于是他手指在一排按钮上无聊的滑来滑去…
正解:树状数组+差分 解题报告: 戳我! 不得不说灵巧真滴是越来越弱了...连模板题都要放上来了QAQ 因为今天考试的T3正解要用到树状数组这才惊觉树状数组掌握得太太太太差了...之前一直靠线段树续着一条狗命 然后又感觉树状数组好像挺复杂挺难明白的就一直没了解也懒得去理解QAQ 然后赶紧就滚去把两个模板给做了 1就懒得港了实在太模板了,2的话是因为还要用差分然后巧的是差分我也不会so就顺便把差分也了解了下quq所以就觉得写下题解记录下趴quq 首先港下差分到底是个啥趴quq 其实我记得最开始我了…
就是裸的区间更新: 相对于直观的线段树的区间更新,树状数组的区间更新原理不太相同:由于数组中的一个结点控制的是一块区间,当遇到更新[l,r]时,先将所有能控制到 l 的结点给更新了,这样一来就是一下子更新到[l,+无穷]了,所以需要将[r+1,+无穷]区间的更新消去,那么同理,[r+1,+无穷]反向减掉相同的数即可 #include<bits/stdc++.h> using namespace std; #define maxn 100005 int bit[maxn],a,b,n; void…
题意:给你一个n*n的全0矩阵,每次有两个操作: C x1 y1 x2 y2:将(x1,y1)到(x2,y2)的矩阵全部值求反 Q x y:求出(x,y)位置的值 树状数组标准是求单点更新区间求和,但是我们处理一下就可以完美解决此问题.区间更新可以使用区间求和的方法,在更新的(x2,y2)记录+1,在更新的(x1-1,y1-1)-1(向前更新到最前方).单点求和就只需要与区间更新相反,向后求一个区间和.这样做的理由是:如果求和的点在某次更新范围内,我们+1但是不执行-1,否者要么都不执行,要么都…
题目大意:给定一个区间,查询子区间里出现次数不小于二的数的个数 此题想了好久没想出来,后来是在网上学习的一个方法 首先按查询区间的右端点进行排序,按右端点从小到大处理 假设pre[a[i]]是与a[i]相同的前一个数的位置,记为left[i] 当查询到第i个数时,对left[left[i]]+1~left[i]的每个数的权值w[]加1 也就是说:左端点在left[left[i]]+1~left[i]内,右端点为i的区间里,出现次数不小于二的数+1 那么对于查询i,答案就是w[left[i]] 因…
Attack Time Limit: 5000/3000 MS (Java/Others)    Memory Limit: 65768/65768 K (Java/Others) Total Submission(s): 2523    Accepted Submission(s): 805 Problem Description Today is the 10th Annual of “September 11 attacks”, the Al Qaeda is about to attac…
Problem 1050: Just Go Time Limits:  3000 MS   Memory Limits:  65536 KB 64-bit interger IO format:  %lld   Java class name:  Main Description There is a river, which contains n stones from left to right. These stones are magic, each one has a magic nu…