小Y与多米诺骨牌
题号:NC15556
时间限制:C/C++/Rust/Pascal 2秒,其他语言4秒
空间限制:C/C++/Rust/Pascal 128 M,其他语言256 M
64bit IO Format: %lld

题目描述

小Y用一副高度不一的多米诺骨牌摆成了一排直线,一共N张骨牌,其中第i张骨牌在直线上的坐标为,高度为,任意两张骨牌的X坐标都不相同。摆完之后他发现,推倒一张骨牌并不一定能够让所有牌都连续倒下,于是他想知道最少要直接推倒多少张牌向左向右皆可,才能让所有牌直接或间接被推倒。

骨牌的厚度不计,也就是说,比如向右(X轴正方向推倒骨牌i时,则当骨牌j满足时会被间接地向右推倒(同理,向左时需要满足)



输入描述:

多组数据,第一行一个整数表示数据组数。

接着有T组数据,每组数据第一行有一个整数表示骨牌数量,

之后N行每行有两个整数表示骨牌的X坐标和高度,给出的坐标按顺序严格递增。



输出描述:

对于每组数据,在一行中输出一个整数,表示最少需要直接推倒的骨牌数量。
示例1

输入

复制
2
3
1 3
4 2
5 2
3
1 3
4 3
7 7

输出

复制
2
1

说明

第一组样例,需要推倒第一个骨牌,然后向右推倒第二个骨牌即可。
第二组样例,向左推倒第三个骨牌即可。