EEOJ/OJ3/README.md

66 lines
1.2 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 比武
by 郑瑜
时间限制: 1000 ms 内存限制: 5000 KB
## 问题描述
N个士兵站成一列每个士兵都有一个武力值。对于队伍中任意两个士兵X和Y如果他们在队伍中相邻或者他们之间没有士兵的武力值严格大于X和Y的武力值中的较小值那么他们需要进行一次比武。请计算总共需要进行几次比武。
## 输入格式
第一行一个整数N代表士兵的总数
第2到第N+1行每行是一个整数表示队伍中从头至尾每个士兵的武力值
## 输出格式
一个整数,表示比武的次数
## 输入样例
输入样例1
> 8
>
> 2
>
> 7
>
> 1
>
> 6
>
> 5
>
> 3
>
> 4
>
> 2
输入样例2
> 5
>
> 4
>
> 2
>
> 2
>
> 2
>
> 5
## 输出样例
输出样例1
> 9
输出样例2
> 10
## 提示
请使用scanf/printf实现输入/输出
比武的次数可能很大超过int的范围
不同士兵的武力值可能相等
可能用到的结论对于任意士兵Z排在Z前面且武力值比Z小的士兵不会和排在Z后面的士兵比武
对于全部的测试点保证1<=每个士兵的武力值<2^31
1-2测试样例N<=1×10^3
3-4测试样例1×10^3<N<=1×10^4
5-10测试样例1×10^4<N<=5×10^5