其他
tzb592825420
这个作者很懒,什么都没留下…
展开
-
cf 238div1 A. Unusual Product 异或运算
题意:一个二进制矩阵,一个运算是对应行和对应列的对应元素相乘再相加,有q组询问1,翻转某一行,2,翻转某一列,3,求这个值。分析:二进制的相加运算就是异或运算,发现运算除了主对角线上的元素,其他元素均异或运算了偶数次,不影响最后结果,所以只需考虑主对角线上元素即可。异或运算的性质:1.x^1翻转,x^0不变。2.x^a^a=x。3.a^b=c,则a^c=b,b^c=a.#include原创 2015-02-16 15:08:49 · 451 阅读 · 0 评论 -
大数模板
#include #include using namespace std; #define DIGIT 4 //四位隔开,即万进制 #define DEPTH 10000 //万进制 #define MAX 251 //题目最大位数/4,要不大直接设为转载 2015-10-23 17:48:19 · 354 阅读 · 0 评论 -
hdu5196 DZY Loves Inversions 思路,计数
题意:一个数列,给出一些区间,计算这个区间有多少子区间逆序对数为k。分析:直接计算k不好算,把问题转化为 最后所求即为sum(min(r1i,r)-l+1) (i>=l&&i#include#include#include#include#include#include#include#include#include#include#include#inclu原创 2015-10-06 14:45:47 · 304 阅读 · 0 评论 -
poj2828 Buy Tickets
题意:给出一系列插队序列,输出最终的队列、parse:从后往前处理,用线段树查询并更新第几个空位即可。#include#include#include#include#include#include#include#include#include#include#include#include#include#define fi first#define se原创 2015-08-21 14:37:48 · 328 阅读 · 0 评论 -
hdu 5109 Alexandra and A*B Problem
枚举乘积长度,再枚举s串位置,再枚举s串前的大小,即可得出s串后的大小。学一下这种写法。#include#include#include#include#include#include#include#include#include#include#include#include#include#define fi first#define se second#d原创 2015-08-21 23:32:20 · 299 阅读 · 0 评论 -
hdu5167 Fibonacci set和map
FibonacciTime Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total Submission(s): 1857 Accepted Submission(s): 467Problem DescriptionFollowing is the原创 2015-09-05 23:23:34 · 351 阅读 · 0 评论 -
待做
hdu5127 cdq分治,动态凸包//hdu5185hdu5192hdu5072hdu5076hdu5077hdu5079hdu5080hdu5081hdu5042hdu5043hdu5046hdu5048hdu5052hdu5022hdu5027hdu5031hdu5172hdu5032hdu5036hdu5168原创 2015-09-25 16:05:18 · 500 阅读 · 0 评论 -
hdu5102 The K-th Distance bfs+结构体
题意:n个节点的一棵树,任意两节点间的距离是两点间路径的长度,因此有n*(n-1)/2个长度,求前k个的和。(2≤n≤100000,0≤K≤min(n(n−1)/2,106)分析:因为k不大,直接用bfs求出前k条路径就ok了,bfs的用法很好,用结构体记录节点,父节点,长度,找到k条后就退出,只需入队k次。这样每条路径都会算重复,因此k先乘2,结果在除2。#include#includ原创 2015-08-18 21:30:30 · 433 阅读 · 0 评论 -
Codeforces Round #316 (Div. 2) D. Tree Requests dfs_clock,二分
将每一层的字符保存下来,并算出没个节点的时间戳,然后就可以二分查找了,当奇数个字符#include#include#include#include#include#include#include#include#include#include#include#include#include#define fi first#define se second#defi原创 2015-08-16 01:07:03 · 349 阅读 · 0 评论 -
hdu5419 Victor and Toys 期望,差分前缀和
期望的分母是C(m,3),利用差分前缀和处理出每个点被多少区间覆盖,w[i]*C(sum[i],3)即为第i位的贡献。学习一下期望的求法考虑每个点的贡献。#include#include#include#include#include#include#include#include#include#include#include#include#include#d原创 2015-08-22 22:00:58 · 750 阅读 · 0 评论 -
hdu4963 中途相遇
将序列分成两半,各n各字符。对于前一半,枚举每个字符属于T1还是T2,共2^n种情况。在一个方案中,T1的子序列为A,T2的子序列为B,我们假定A的长度不大于B的长度。显然,A是B的前缀才符合要求。令C=B-A,即B去掉A前缀后剩余的部分。同理,处理后一半得到一个C‘,就是去掉相同后缀后剩余的部分。当C=C'就是一个方案使得T1=T2。主要有两点十分巧妙:1.枚举过程可以控制t1长度2.如原创 2015-05-23 14:39:28 · 805 阅读 · 0 评论 -
hdu5138 Negative and Positive (NP) 快速读入
先预处理前缀和sum[i],枚举区间尾i,查找哈希表中是否有sum[i]-k和sum[i]+k,哈希表用map就行了,mp[0]表示以偶数下标结尾前缀和,mp[1]表示以奇数下标结尾前缀和。快速读入read.#include#include#include#include#include#include#include#include#include#include#d原创 2015-03-07 22:43:26 · 476 阅读 · 0 评论 -
codeforces Rockethon 2015 C. Second price auction 概率
题意:n个投标者,每个投标是一个区间,投标者头区间内某个数的概率相等,最后投标最高者中标,需付出其余投标者的最高投标,求最后付出多少钱的期望。分析:概率题,暴力枚举最后要付的 钱t,得出每个投标>t,=t,#include#include#include#include#include#include#include#include#include#include#de原创 2015-02-12 15:27:59 · 430 阅读 · 0 评论 -
cf Round #276 (Div. 2) D. Maximum Value
题意:n个数求ai%aj的最大值,ai>=aj。分析:nlogn的做法,枚举这n个数,如何在logn时间内求出最大值,可以保存pre[a]为n个数中比a小的最大值,枚举x的倍数,可求出%x的最大值。#include#include#include#include#include#include#include#include#include#include#define原创 2015-02-23 14:23:00 · 386 阅读 · 0 评论 -
cf Round #292 (Div. 2)D. Drazil and Tiles 构造
需要将n*m的平面铺上1*2的砖,没有解或有多解输出Not unique,有一个解输出这个解。暴力肯定不行,倘若每个点都有>=2度,则肯定有多解,若有点'.',且度数为0,肯定无解。维护队列,将度数为1的加入,铺一块并更新周围cell的度数。#include#include#include#include#include#include#include#include#in原创 2015-02-20 13:57:24 · 414 阅读 · 0 评论 -
cf#238 (Div. 1) B. Toy Sum
根据对称(1,s),(2,s-1),(3,s-2)...若a被选,加入s-a,若a和s-a都被选,加入另一组(b,s-b).#include#include#include#include#include#include#include#include#include#include#define inf 10000000#define pi acos(-1.0)#原创 2015-02-17 13:28:36 · 393 阅读 · 0 评论