#P7936. [COCI 2007/2008 #5] BARICA

[COCI 2007/2008 #5] BARICA

Description

Barica 是一只非同寻常的青蛙。她住在一个池塘里,有 NN 片漂浮在水面上的荷叶。这些荷叶的编号为 11NN,位置可以用一对坐标表示。Barica 可以在这些荷叶上跳来跳去,但是她害怕斜着跳和朝负方向跳。

准确的说,她可以从坐标 (x1,y1)(x_1,y_1) 跳到另一个坐标 (x2,y2)(x_2,y_2) 仅当:

  • x2>x1x_2>x_1y2=y1y_2=y_1 或者

  • y2>y1y_2>y_1x2=x1x_2=x_1

对于每一片荷叶,我们知道其附近的苍蝇数量。Barika 可以吃掉所有在她荷叶附近的苍蝇。

Barica 每吃一只苍蝇会获得 11 个单位的能量,每进行一次跳跃消耗 KK 个单位的能量。如果 Barica 没有足够的能量,她就不能进行跳跃。

Barica 想通过 11 号植物到达 NN 号植物,并获得尽可能多的能量。Barica 开始时没有能量,必须通过吃掉 11 号植物附近的苍蝇来获取能量。

找到使得 Barica 达到目标的一种可行路径。

Input Format

第一行,两个整数 NNKK

接下来 NN 行,每行包含三个整数 xix_iyiy_iziz_i,表示第 ii 号荷叶的坐标为 (xi,yi)(x_i,y_i),且其附近有 ziz_i 只苍蝇。

Output Format

第一行,输出到达终点后能量单位数量。

第二行,输出一个整数 LL,表示 Barica 需要经过的植物个数。必须包含 11 号和 NN 号植物。

接下来 LL 行,依次输出 Barica 需要经过的植物坐标。

6 5
1 1 5
2 1 5
1 2 4
2 3 5
3 2 30
3 3 5 
5
4
1 1
2 1
2 3
3 3 
8 10
1 1 15
2 2 30
1 2 8
2 1 7
3 2 8
2 3 7
4 2 100
3 3 15
36
5
1 1
1 2
2 2
3 2
3 3
9 5
5 5 10
6 5 2
7 5 1
5 6 2
6 6 6
7 6 2
5 7 1
6 7 2
7 7 1 
2
3
5 5
7 5
7 7 

Hint

对于 100%100\% 的数据,2N3×1052\le N\le 3\times 10^51K10001\le K\le 10000xi,yi1050\le x_i,y_i\le 10^50zi10000\le z_i\le 1000

输入数据保证有解,但不保证有唯一解。

本题分值按照原比赛设置,满分 7070 分。