#80. 叠高高

叠高高

Description

给你 $n$ 个长方体 $cuboids$ ,其中第 $i$ 个长方体的长宽高表示为 $width_i, length_i, height_i$。请你从 $cuboids$ 选出一个 子集 ,并将它们堆叠起来。

如果 $width_i <= width_j$ 且 $length_i <= length_j$ 且 $height_i <= height_j$ ,你就可以将长方体 $i$ 堆叠在长方体 $j$ 上。你可以通过旋转把长方体的长宽高重新排列,以将它放在另一个长方体上。

求堆叠长方体 $cuboids$ 可以得到的最大高度。

Input Format

第一行输入一个正整数$t(1≤t≤1000)$,表示有$t$组测试样例。

对于每组样例描述如下:

第一行输入一个正整数 $n(1≤n≤100)$。

接下来 $n$ 行,每行输入三个正整数分别表示 $width_i,length_i,height_i(1<=width_i,length_i,height_i<=100)$。

Output Format

对于每组测试样例:

输出一行,包含一个正整数表示堆叠的最大高度。

1
3
45 23 12
50 45 20
95 37 53
190

Source

Online Judge http://127.0.0.1