三维导弹拦截
A 国与 B 国之间的战争正如火如荼地进行。B 国凭借强大的经济实力开发了大量远程攻击导弹,企图直接摧毁 A 国的指挥部。为了阻止攻击,A 国需要使用拦截导弹摧毁这些导弹。
B 国的导弹形成了三维立体打击。忽略导弹的大小,可以将每枚导弹的位置抽象为三维空间中的一个点。为简化问题,只考虑某一瞬间所有导弹均静止的状态。
拦截导弹可以精确引爆对方的导弹,且自身不会因此损毁。然而,这些拦截导弹只能沿三维坐标严格单调上升的方向移动。也就是说,一枚拦截导弹所摧毁的导弹序列中,、、 三个坐标都必须分别严格递增。
将 B 国的 枚导弹依次编号为 至 。例如,若 枚导弹的位置依次为 、、、,则序列 是合法的打击序列,而序列 不合法,因为第 枚与第 枚导弹的 坐标没有严格递增。
给定所有导弹的位置,请回答以下两个问题:
- 一枚拦截导弹最多能够摧毁多少枚 B 国导弹?
- 最少需要使用多少枚拦截导弹,才能摧毁 B 国的所有导弹?
输入格式
第一行包含一个整数 ,表示 B 国导弹的数量。
接下来 行,每行包含三个非负整数 、、,表示第 枚导弹的位置。
保证任意两枚导弹不会位于同一位置。
输出格式
第一行输出一个整数 ,表示一枚拦截导弹最多能够摧毁的导弹数量。
第二行输出一个整数 ,表示摧毁所有 B 国导弹至少需要的拦截导弹数量。
样例输入
4
0 0 0
1 1 0
1 1 1
2 2 2
样例输出
3
2
数据范围
- 所有坐标均为 范围内的整数;
- 对于 的数据,;
- 对于 的数据,;
- 对于 的数据,。
来源与许可
本题题面与测试数据整理自 BZOJ。
样例 1
输入
4
0 0 0
1 1 0
1 1 1
2 2 2
输出
3
2