#P10798. 「CZOI-R1」消除威胁

    ID: 10202 Type: RemoteJudge 500ms 512MiB Tried: 0 Accepted: 0 Difficulty: 4 Uploaded By: Tags>贪心O2优化st表单调栈

「CZOI-R1」消除威胁

题目背景

本题数据已修复。

题目描述

给定一个序列 {An}\{A_n\}

我们称序列 AA 中的一个区间 [l,r][l,r] 具有威胁,当且仅当 1l<rn1\le l<r\le nAl=ArA_l=A_r,且 i[l,r]\forall i\in[l,r] 满足 AiAl|A_i|\le|A_l|

你可以操作 AA 任意次,每次操作选择一个 AiA_i 修改为 Ai-A_i。请问最后序列 AA 中具有威胁的不同区间最少有多少个?

两个区间 [l1,r1][l_1,r_1][l2,r2][l_2,r_2] 不同,当且仅当 l1l2l_1 \ne l_2r1r2r_1 \ne r_2

输入格式

第一行一个整数 nn ,表示 AA 的长度。

第二行 nn 个整数,表示 {An}\{A_n\}

输出格式

第一行一个正整数,表示最少的具有威胁的区间个数。

8
3 2 1 2 3 -1 3 3
2

提示

【数据范围】

本题采用捆绑测试

  • Subtask #1(10 pts10\text{ pts}):n10n\le10
  • Subtask #2(10 pts10\text{ pts}):n103n\le10^3
  • Subtask #3(10 pts10\text{ pts}):Ai60|A_i|\le60
  • Subtask #4(10 pts10\text{ pts}):Ai|A_i| 均相等。
  • Subtask #5(20 pts20\text{ pts}):n105n\le10^5
  • Subtask #6(40 pts40\text{ pts}):无特殊限制。

对于 100%100\% 的数据,1n5×1051\le n\le5\times10^5Ai109|A_i|\le10^9