04 2019 档案
摘要:题意:给定数组c[n],及多组a,b ,求每一组的后缀和 c[a]+c[a+b]+c[a+2*b]+c[a+3*b]....... 分析: 对于每一个b值 ,都可以在o(n)的复杂度内利用dp 求出该b下不同a值对应的后缀和sum[a]: for( int j=n ;j>=1 ;j--){ if(
阅读全文
摘要:数组前面的一个元素 大于等于 后面的一个元素就是一个逆序对; 树状数组可以快速求前缀和,利用这一特性,可以求逆序对个数,见下: 用数组c[ i ]记录数组a[ n ]中i这一元素出现的次数 ,当a[ n ]中元素较大时可以离散化处理。 将a[ n ]从a[n -1]到a[0] 依次存到树状数组中,每
阅读全文
摘要:前几题运用了树状数组的 单点修改+区间查询,一维区间修改+单点查询(差分法),二维区间修改+单点查询(差分法) 这些都是树状数组的常规操作 树状数组还可以通过维护两个数组实现一维的区间修改+区间查询,详见:https://www.cnblogs.com/lcf-2000/p/5866170.html
阅读全文
摘要:思想和上一题一模一样,不过是二维树状数组+差分数组 注意二维区间修改的表示: add( x1 ,y1 ,1); add( x2+1 ,y2+1 ,1); add( x1 ,y2+1 ,-1); add( x2+1 ,y1 ,-1); #include <cstdio> #include <cstri
阅读全文
摘要:N个气球排成一排,从左到右依次编号为1,2,3....N.每次给定2个整数a b(a <= b),lele便为骑上他的“小飞鸽"牌电动车从气球a开始到气球b依次给每个气球涂一次颜色。但是N次以后lele已经忘记了第I个气球已经涂过几次颜色了,你能帮他算出每个气球被涂过几次颜色吗? Input 每个测
阅读全文
摘要:树状数组是一种类似于线段树的数据结构; 它各节点之间的移动方式基于二进制的进位; 每个下标存储值是下标 最低位1后面所跟0的个数的二倍的 该点之前的数据之和; 如 : 10100 存了四个元素的和,是a[10100] a[10011] a[10010] a[10001] 移动到父节点(存元素和更多的
阅读全文
摘要:有标号为1到n的n个龙珠,分别放在对应标号为1到n的n个城市里。 下面有两种操作: T A B表示把A龙珠所在城市的所有龙珠都转移到B龙珠所在的城市中 Q A 表示查询A,需要知道A龙珠现在所在的城市,A所在的城市有几颗龙珠,A转移到这个城市移动了多少次,分别输出3个整数,表示上述信息。 前两个用普
阅读全文
摘要:给你一个管道地图,求联通块个数 很简单的并查集,简单预处理输入一下 但zoj能过,hdu就是莫名其妙的wa 后来发现是我地图的表示时边界的处理有问题 例如 ABD KJH KNG 我把这个矩阵读取成一行:ABDKJHKNG 对于第i个元素 上下左右就表示为 ut=i - n ,lt=i -1 ,rt
阅读全文
摘要:XX星有许多城市,城市之间通过一种奇怪的高速公路SARS(Super Air Roam Structure 超级空中漫游结构)进行交流,每条SARS都对行驶在上面的Flycar限制了固定的Speed,同时XX星人对 Flycar的“舒适度”有特殊要求,即乘坐过程中最高速度与最低速度的差越小乘坐越舒服
阅读全文

浙公网安备 33010602011771号