Komorebi
首页
文章
标签
关于
友链
CodeForces1011E 裴蜀定理
题意: 有一个计数器,计数器的初始值为0,每次操作你可以把计数器的值加上a_1,a_2,...,a_n中的任意一个整数,操作次数不限(可以为0次),问计数器的值对m取模后有几种可能,并输出这些可能。 思路: 裴蜀定理: 对任何整数a、b和它们的最大公约数d,关于未知数x和y的ax+by=m有整数解时当且仅当m是d的倍数。 特别地,ax+by=1有整数解当且仅当整数a和b互质。 设a_1,a_2,a
2018-08-27
题解
HDU6438 贪心+优先队列
题意: 给出n天,每天可以买进或者卖出或者不买不卖,价格是这一天的权值,问最多利润是多少,如果利润相同的有多种,取操作数最小的那种。输出最多利润与操作数。 思路: 这道题队友似乎最后想出来了啊?可是来不及写了… 用小顶堆维护。 如果当前输入为x,当堆为空或者堆顶元素大于等于x时,把x放入堆中(因为如果利润相同要操作数最小,所以等于也要放入堆中,而不是买卖)。 否则删除堆顶元素,将x在堆中放两遍,
2018-08-26
题解
树上启发式合并 Dsu on tree
树上启发式合并可以用于解决子树的问题,但是不可以带修改。 来看一道例题: CodeForces600C题意: 给出一棵树,每个结点有一种颜色,求每个结点的子树中出现次数最多的颜色,如果有多个出现次数最多的颜色,则将它们相加。 思路: 如果只是求子树的种类数的话似乎用dfs序+莫队也可以做? 考虑最暴力的O(n^2)做法,枚举每个点,暴力访问子树中的点,统计完以后将统计的num数组清空。 其实num
2018-08-24
学习
HDU6435 k维最远曼哈顿距离
题意: 给出一堆n个东西和另一堆m个东西,每个东西有一个分数S和k个属性值。让你在n个东西和m个东西里各选一件,使S_{nw}+S_{mw}+\sum_{i=1}^k|x_{nw}[i]-x_{mw}[i]|最大。其中K
2018-08-22
题解
树链剖分
参考博客: http://www.cnblogs.com/zwfymqz/p/8094500.html https://www.cnblogs.com/ivanovcraft/p/9019090.html http://www.cnblogs.com/chinhhh/p/7965433.html 定义重儿子:父亲节点的所有儿子中子树结点数目最多(size最大)的结点; 轻儿子:父亲节点中除了重儿
2018-08-22
学习
CTU2017D 哈希+乱搞
题意: 给出N个点,可以选其中四个点组成正方形,输出最大边长。其中1≤N≤100000。 思路: 容易想到如果知道两个点这个正方形就可以确定,但是N*N明显不行,这里又可以有一个剪枝,只需要枚举同行或者同列的点。 对于每个点哈希一下存在unordered_set里。 两重循环,外层枚举一个点,内层枚举跟它同行或同列的点,然后确定边长,在unordered_set找另外两个点存不存在。这里还是有很多
2018-08-21
题解
HDU6415 推导/DP
题意: 当矩阵中的(x,y)为所在行和所在列中最大的,该(x,y)被称为纳什均衡点。 问n*m的全排列矩阵最多只有一个纳什均衡点的方案有几种,对p取模。 其中1≤t≤20,1≤n,m≤80,1≤p≤10^9。 思路: 因为矩阵中最多只能有一个纳什均衡点,所以肯定是最大值的点。所以当放了最大值之后,第二大的值只能放在和它同行或同列的地方,同理,对于一个放完的点,下一个点只能放在和之前的点同行或同列的
2018-08-20
题解
ZOJ4009 & 上海大都会赛H 循环节+线段树
ZOJ4009题意: 给出n个数字,有两种操作: 1\ l\ r:将a_l, a_{l+1}, \dots, a_r变成a_l^3, a_{l+1}^3, \dots, a_r^3; 2\ l \ r:求\displaystyle\sum_{i=l}^r a_i模99971的结果。 思路: 打表可以发现,在该模数下,每48个数字会有循环节。所以开48棵线段树,在v[0]里放当前值。 对于修改操作,
2018-08-19
题解
HDU5884 二分+多叉哈夫曼树+单调队列
题意: 给出n个数字,要求合并这些数字的代价不超过T,每次可以合并不超过k个数字,每次合并的代价为这些数字的和。问最小的k可以是多少。其中2≤N≤100000。 思路: 容易想到二分这个k。 但是这里合并的时候有个问题,不能直接取当前最小的几个合并,因为可能会出现最后一次合并剩下的不是k的情况,这样子就不能最优了。比如这个例子1 2 3 4 5 6,k=3的时候,如果直接取的话代价为6+15+21
2018-08-18
题解
HDU6390 公式推导+容斥
题意: 有G_u(a,b)=\frac{\varphi(ab)}{\varphi(a)\varphi(b)}。给定m,n,p,求(\sum_{a=1}^m\sum_{b=1}^nG_u(a,b))\ mod\ p。其中1≤m,n≤1000000,max(m,n)
2018-08-16
题解
1
…
3
4
5
6
7
…
23
Search
×
keyword