#P1192. 最优连通子集

最优连通子集

题目描述

在平面直角坐标系中,如果一个点PP的坐标(x,y)(x, y)均为整数,则称PP整点。所有整点的集合记为WW

定义1

对于两个整点P1(x1,y1)P_1(x_1, y_1)P2(x2,y2)P_2(x_2, y_2),如果x1x2+y1y2=1|x_1 - x_2| + |y_1 - y_2| = 1,则称P1P_1P2P_2相邻,记作P1P2P_1 \sim P_2;否则称P1P_1P2P_2不相邻

定义2

SSWW的一个有限子集,即S={P1,P2,,Pn}S = \{P_1, P_2, \dots, P_n\}n1n \geq 1),其中每个PiP_i1in1 \leq i \leq n)属于WW,则称SS为一个整点集

定义3

SS是一个整点集,如果点R,TSR, T \in S,并且存在一个有限的点序列Q1,Q2,,QkQ_1, Q_2, \dots, Q_k满足:

  1. QiSQ_i \in S1ik1 \leq i \leq k);
  2. Q1=RQ_1 = RQk=TQ_k = T
  3. QiQi+1Q_i \sim Q_{i+1}1ik11 \leq i \leq k-1),即QiQ_iQi+1Q_{i+1}相邻;
  4. 对于任意1i<jk1 \leq i < j \leq k,有QiQjQ_i \neq Q_j

则称RRTTSS连通,并将点序列Q1,Q2,,QkQ_1, Q_2, \dots, Q_k称为SS中连接RRTT的一条道路

定义4

如果一个整点集VV满足:对于VV中的任意两个整点,VV中有且仅有一条连接它们的道路,则称VV单整点集

定义5

对于平面上的每个整点,可以赋予它一个整数作为该点的权值。整点集SS中所有点的权值之和称为SS权和

问题描述

给定一个单整点集VV,求VV的一个最优连通子集BB,满足:

  1. BVB \subseteq V
  2. 对于BB中的任意两个整点,它们在BB中连通;
  3. BB是所有满足条件(1)和(2)的整点集中权和最大的。

输入格式

  • 第1行是一个整数NN2N10002 \leq N \leq 1000),表示单整点集VV中点的个数;
  • 接下来的NN行,每行包含三个整数Xi,Yi,CiX_i, Y_i, C_i,分别表示第ii个点的横坐标、纵坐标和权值。同一行相邻两数之间用空格分隔。
    坐标范围:106Xi,Yi106-10^6 \leq X_i, Y_i \leq 10^6
    权值范围:100Ci100-100 \leq C_i \leq 100

输出格式

  • 仅一个整数,表示所求最优连通子集的权和。

示例输入

5
0 0 -2
0 1 1
1 0 1
0 -1 1
-1 0 1

示例输出

2

题目来源

Noi 99