学习绝对值
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
题目描述
鸡尾酒的丹丹学了三个月 C++ 基础,今天终于学到了条件分支 if 里面的逻辑运算 && 和 ||,经过一段时间的学习之后,鸡尾酒问大家 || 是什么意思,大家异口同声:绝对值符号。
看到大家这么喜欢绝对值,于是鸡尾酒给了大家一个简单的问题:给定 个数字,数字只可能是 四个中的一个。请问有多少个子数组满足其最大值的绝对值等于最小值的绝对值?
丹丹看到题目后连忙提问:“老师,你说的第一个数字这个 2 前面的横杠是啥?”
看来丹丹是做不出来了,你可以帮帮他吗?
备注:子数组指的是连续的一段。
输入格式
第一行输入一个正整数 ,接下来一行输入 个数字,仅可能是 中的一个。
输出格式
输出一行一个整数表示答案。
样例
4
-2 -1 1 2
6
【说明】
[-2]、[-1]、[1]、[2]、[-1,1]、[-2,-1,1,2] 这六个子数组满足最大值和最小值的绝对值相等。
1
1
1
5
1 -1 2 -1 1
7
数据范围与提示
本题共有 10 个测试点
对于 1-2 测试点,有
对于 3 测试点,有
对于 4 测试点,所有数字的绝对值相等。
对于 5 测试点,所有数字均为正整数。
对于 6-7 测试点,没有 -2 这个数字,
对于 8 测试点,
对于 9-10 测试点,