2017多校联合
jia_zheng
这个作者很懒,什么都没留下…
展开
-
HDU 6060 RXD and dividing
题意: 给出一个具有n个顶点的树, 将其中的2~n分成k部分, 求1号顶点到分成k块后各个顶点的最大权值和。 思路: 将2~n的结点编号{1~k},每条边的权乘以其下子树的大小与k的较小值。 代码:# include <bits/stdc++.h>using namespace std;typedef long long LL;const int INF = 0x3f3f3f3f;co原创 2017-08-08 10:42:06 · 285 阅读 · 0 评论 -
HDU 6085 Rikka with Candies
题意: 给出一个A数组中有n个数, B数组中有m个数, 再给出q个询问每个询问为k, 求有多少对pair (i, j)使得AiA_i对BjB_j取余为k结果对2取余。 代码:# include <bits/stdc++.h>using namespace std;typedef long long LL;const int INF = 0x3f3f3f3f;const int Q = 1e原创 2017-08-10 09:23:36 · 317 阅读 · 1 评论 -
2017 Multi-University Training Contest - Team 1 1002 Balala Power!
题目链接题意 给定多个字符串,给二十六个字母赋予0~25的值,每个字符串形成一个26进制的数字,求怎么分配权值使得这几个字符串的和最大。思路 官方:每个字符对答案的贡献都可以看作一个 26 进制的数字,问题相当于要给这些贡献加一个 0 到 25 的权重使得答案最大。最大的数匹配 25,次大的数匹配 24,依次类推。排序后这样依次贪心即可,唯一注意的是不能出现前导 0。 建一个26进制的数组nu原创 2017-07-26 15:30:18 · 272 阅读 · 0 评论 -
HDU 6069 Counting Divisors
题目链接思路: 先打一个从1到1e6的素数表,然后枚举不超过r√\sqrt{r}的所有素数,然后再去枚举这些素数在l和r区间内的倍数,将其分解质因数,最后剩下的素数的c只可能是0或1,计算出每个数对应的因子个数,对于每个数的因子个数就等于枚举的因子个数*k+1累乘起来,最后加起来即可。 代码# include <bits/stdc++.h>using namespace std;typede原创 2017-08-05 16:42:37 · 232 阅读 · 0 评论