Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include <iostream>#include <stdio.h>#include <vector>#include <queue>#include <algorithm>using namespace std;#define MAX_DIST 1000000000typedef struct Island{int x;int y;int id;Island(int _x, int _y, int _id):x(_x),y(_y),id(_id){}}Island;typedef struct Clique{int id;int dist = MAX_DIST;vector<Clique*> adj;vector<int> e_weight;Clique(int _id):id(_id){}}Clique;bool CompareX(const Island *lhs, const Island *rhs){return lhs->x < rhs->x;}bool ComapreY(const Island *lhs, const Island *rhs){return lhs->y < rhs->y;}