题目大意:给定n个数,多次询问选择k个数使和为奇数的最大和
首先将所有数排序
对于每个询问,如果最大的k个数之和是奇数,那么答案显然是这k个数的和
如果最大的k个数之和是偶数,那么我可以将后k个数中最小的偶数换成前n-k个数中最大的奇数,或者将后k个数中最小的奇数换成前n-k个数中最大的偶数
二者取最优即可 无法如此做则输出-1
#include
#include
#include ...
分类:
其他好文 时间:
2014-11-25 18:42:11
阅读次数:
208
题目大意:给定一棵树,令一个点到所有点的距离与点权的乘积之和为b[i],求每个点的权值a[i]
首先如果给定a[i]我们可以很轻松的求出b[i] 但是反过来怎么搞?高斯消元?30W?
考虑已知a[i]求b[i]的情况 令这棵树的根为1 点i到根节点的距离为dis[i] 以i为根的子树的a值之和为size[i] 那么有递推式
b[1]=Σa[i]*dis[i]
b[x]=b[fa[x]]-2...
分类:
其他好文 时间:
2014-11-19 02:01:26
阅读次数:
166