CF689D Friends and Subsequences
题目描述
Mike 和 !Mike 是从小一起长大的老对手,他们在做的每件事上都互相对立,只有在编程方面例外。今天他们遇到了一个无法独自解决的问题,但如果有你,也许就能解决?
他们每个人都有长度为 $n$ 的整数数列 $a$ 和 $b$。给定整数对 $(l,r)$ 作为询问,Mike 可以立刻说出 $\max\{a_l,a_{l+1},...,a_r\}$ 的值,而 !Mike 能立刻说出 $\min\{b_l,b_{l+1},...,b_r\}$ 的值。
现在假设有一个机器人(也就是你!)向他们询问所有可能的不同区间 $(l,r)$($1\leq l\leq r\leq n$,一共会有 $n(n+1)/2$ 个询问),并统计有多少次他们的答案是一致的,也就是统计满足 $\max\{a_l,a_{l+1},...,a_r\} = \min\{b_l,b_{l+1},...,b_r\}$ 的询问对的数量。
机器人会统计多少次这种情况?
输入格式
第一行包含一个整数 $n$($1\leq n\leq 200000$)。
第二行包含 $n$ 个整数 $a_1,a_2,...,a_n$($-10^9\leq a_i\leq 10^9$),表示序列 $a$。
第三行包含 $n$ 个整数 $b_1,b_2,...,b_n$($-10^9\leq b_i\leq 10^9$),表示序列 $b$。
输出格式
输出一个整数,表示机器人统计到的次数,即有多少个区间对 $(l,r)$ 满足 $\max\{a_l,a_{l+1},...,a_r\} = \min\{b_l,b_{l+1},...,b_r\}$。
说明/提示
第一组样例中的情况为:
1. $l=4$,$r=4$,因为 $\max\{2\}=\min\{2\}$。
2. $l=4$,$r=5$,因为 $\max\{2,1\}=\min\{2,3\}$。
第二组样例中,没有满足条件的区间,因为 Mike 对任意询问对的回答都是 $3$,而 !Mike 总是回答 $1$。
由 ChatGPT 5 翻译