某某通信公司接到了一项工程,要求实地考察。经过跋山涉水之后,终于来到了入口处,初极狭,才通人。复行数十步,豁然开朗。
经考察发现,这片山区里面有n个村庄,通信公司需要让这n个村庄都连接上网络。使某一村庄C连接网络的方案有两种:
(1)在C建立一个网络中心。
(2)从有网络的村庄D拉一根网络光纤到C。
为了简化问题,我们做出如下约定:
(1)n个村庄的编号为1–n,每个村庄都有自己的坐标(xi,yi),不同村庄的坐标有可能相同。
(2)每个村庄都有自己的一个连接花费值ki。
(3)每个村庄都有自己的一个建造花费值ci,为从编号为i的村庄建造一个网络中心所需要的花费。
(4)连接两个村庄i,j的光纤长度为abs(xi-xj)+ abs(yi-yj)
(5)连接两个村庄i,j的光纤每单位的花费值为(ki+kj),ki,kj为村庄i,j的连接花费值。
输入格式:
第一行输入一个正整数n(n<=2000),为村庄的数量。
接下来n行,每行两个整数xi(1<=xi<=1000000),yi(1<=yi<=1000000),表示村庄i的坐标
接下来一行输入n个整数ci,(1<=ci<=1e9),表示每个村庄的建造花费。
接下来一行输入n个整数ki,(1<=ki<=1e9),表示每个村庄的连接花费。
输出格式:
输出一个整数val,表示使这些村庄都通网所需要的最小花费。
输入样例1:
3 2 3 1 1 3 2 3 2 3 3 2 3
输出样例1:
8
样例说明:可以得到,在1,2,3分别建立一个网络中心,花费最小。
输入样例2:
3 2 1 1 2 3 3 23 2 23 3 2 3
输出样例2:
27
样例说明:可以得到,仅在2号村庄建立一个网络中心,其余村庄使用光缆连接,花费最小
数据范围说明:
60%数据保证仅在1号村庄修建一个网络中心是最优的。 多组输入(实际上只有一个测试点是多组输入)。
何不好的老司机梦想 并查集+离线
http://119.3.215.251/domjudge/public/problems/93/text
牛客 锻炼身体 (牛妹抢路由器那题 树形结构bfs)
https://ac.nowcoder.com/acm/contest/6915/B
动态规划
leetcode 1567. 乘积为正数的最长子数组长度
并查集+tarjan 求缩点
leetcode 1568. 使陆地分离的最少天数
https://leetcode-cn.com/problems/minimum-number-of-days-to-disconnect-island/
树的重心
题意 : 给定n (n<=1e5)
个点的树, 对于每个点u
输出u
到其他节点v
的路径和
input
5
1 2
1 3
3 4
3 5
output
6 9 5 8 8
感谢大佬的解答
题目链接https://cses.fi/problemset/task/1133
acwing分享里的一道概率题,看不懂题解
链接https://www.acwing.com/blog/content/3793/
感谢@xnuohz大佬的解答
AcWing 2342324. 配对
从acwing的题解看到的https://www.acwing.com/file_system/file/content/whole/index/content/1419523/
题目描述
给出一棵n个点的树,将这n个点两两配对,求所有可行的方案中配对两点间的距离的总和最大为多少。
input
一个数n(1<=n<=100,000,n保证为偶数) 接下来n-1行每行三个数x,y,z表示有一条长度为z的边连接x和y(0<=z<=1,000,000,000)
output
2020年11月9日leetcode周赛
单调栈 : 求长度为k
且字典序最小的子序列
5614. 找出最具竞争力的子序列
牛客两个累加(a[i]*b[j)
看上去是道基础的化简数学题
https://ac.nowcoder.com/acm/contest/9476/B
传说中的数论分块
https://ac.nowcoder.com/acm/contest/9716/C
求
∑
i
=
1
n
=
1
e
9
(
上
取
整
(
n
i
)
)
\sum_{i=1}^{n=1e9}(上取整(\frac{n}{i}))
∑i=1n=1e9(上取整(in))是多少
还没看懂,实训结束后再看看