P2076 曼哈顿距离最小生成树

题目背景

题目修改自 [Library Checker](https://judge.yosupo.jp/problem/manhattanmst),及[数据生成器 / 校验器来源](https://github.com/yosupo06/library-checker-problems/tree/master/geo/manhattanmst)。 请注意原题所有下标从 $0$ 开始($0$-indexed),本题所有下标从 $1$ 开始($1$-indexed)。

题目描述

给定平面上的 $n$ 个点 $(x_1,y_1),(x_2,y_2),\ldots,(x_n,y_n)$。 考虑一个有 $n$ 个结点的完全图,对于 $1\le u,v\le n(u\ne v)$,结点 $u,v$ 之间有一条权值为 $|x_u-x_v|+|y_u-y_v|$ 的边。 请求出该图的最小生成树。

输入格式

第一行输入一个整数 $n$ 表示点的个数。 接下来 $n$ 行,第 $i$ 行输入两个整数 $(x_i,y_i)$,表示第 $i$ 个点的坐标。

输出格式

第一行包含一个整数 $x$ 表示最小生成树的边权之和。 接下来 $(n-1)$ 行,第 $i$ 行包含两个整数 $(u_i,v_i)$,表示最小生成树中的一条边。 **如果有多解,你可以输出任意一种。**

说明/提示

对于 $20\%$ 的数据,$1\le n\le 1000$。 对于 $100\%$ 的数据,$1\le n\le 2\times 10^5$,$0\le x_i,y_i\le 10^9$。