5150: 【单调栈】百度2017秋招-士兵队列

金币值:1 时间限制:4.000 s 内存限制:128 M
正确:51 提交:62 正确率:82.26% 命题人:
点赞量:0 收藏量:0 题目类型:程序 知识点: 贪心 单调栈 百度

题目描述

一队士兵在操场上排成一列,士兵总数为n,士兵按照队伍从前往后的顺序从1到n依次编号。

每个士兵有各自的身高,第i个士兵的身高为ai。 士兵列队完毕后,将军走到队列的最前面。

因为身高不一,有些士兵可能被前面身高更高的挡住了,这样将军就看不到他们。

将军能看到某个士兵当且仅当他的身高严格大于他前面的所有士兵。 问将军一共能看到多少个士兵。

输入格式

第一行输入一个整数T(T<=100),表示测试数据的组数。 

每组数据第一行输入一个数n(1 <= n <= 10^4)表示士兵的个数,第二行n个整数a1, a2, ..., an( 0 <= ai <= 10^9),依次表示每一个士兵的身高。

输出格式

对于每组数据,输出一行,将军能看到的士兵数。

输入样例    复制

3
4
1 2 3 4
3
1 1 1
4
1 1 3 2

输出样例    复制

4
1
2