摘要:
题意:给定一个N个节点的树,1<=N<=50000 每个节点都有一个权值,代表商品在这个节点的价格。商人从某个节点a移动到节点b,且只能购买并出售一次商品,问最多可以产生多大的利润。 思路:路径压缩,得到每个点到当前根的信息,然后更新即可。 有可以用倍增做。 很久前抄的代码。 阅读全文
摘要:
发现一个神奇的东西,做两次高维前缀和,可以反演回来。。。。可能我没抓住高维前缀和的用法吧。 https://www.cnblogs.com/chenhuan001/p/5800917.html http://vfleaking.blog.uoj.ac/blog/87 阅读全文
摘要:
占位 阅读全文
摘要:
题意:给定一棵树,有点权a[],有边权。 现在有M次修改点权的操作,输出每次修改后,Σ(a[i]^a[j])*dis(i,j); 思路:因为待修改,我们需要快速得到以及修改一个点到其他所有点的信息。 肯定就是动态点分治了啊。 而异或这个操作没有什么累加的性质,所以每一位拆开单独计算。 根据二进制位置 阅读全文
摘要:
题意:二维平面上给你N颗星,给出星星的坐标,亮度; 然后给你一个W*H的窗口,问你最大的亮度和。 思路:扫描线,假设有一个inf*H的窗口,按照y排序,那么就把H范围内的星星放入了这个窗口(单调队列实现),现在就成了华东窗口问题,在一维数组里面找长度为W的窗口的最大和,但是现在带修改,单点修改,固定 阅读全文
摘要:
题意:外卖员开始在0号节点,有N个人点了外卖,(N<=10),现在告诉两两间距离,问怎么配送,使得每个人的外卖都送外,然后回到0号点的总时间最短,注意,同一个点可以多次经过。 思路:TSP问题(货郎担问题),可以通过状态DP解决小数据问题。 先floyd求一下两两最近距离,然后DP; dp[i][j 阅读全文
摘要:
题意:给你n个寺庙,m个村庄,p条路,现在你要在这n+m个位置中选出若干个位置打井,每个位置打井的费用会告诉你,同时p条路也有修建费用,现在每个寺庙都住着一个和尚,问你最小的费用让这n个和尚都能喝上水。 思路:可以对照之前做的MST题目(https://www.cnblogs.com/hua-don 阅读全文
摘要:
. 阅读全文