#449. [R72E]集群

[R72E]集群

时空限制

1S/512M

题目描述

nn 台服务器从左到右排列。第 ii 台服务器在第 1,2,,ai1,2,\ldots,a_i 秒在线,从第 ai+1a_i+1 秒开始永久离线;若 ai=0a_i=0,则该服务器始终离线。

每一秒内,每个无法再向左或向右扩展的连续在线服务器区间组成一个集群。包含 kk 台服务器的集群在这一秒会完成 pkp_k 个任务。

求所有正整数秒内,所有集群完成的任务总数。输出答案对 998244353998244353 取模的结果。

格式

输入格式

第一行包含一个整数 nn,表示服务器的数量。

第二行包含 nn 个整数 a1,a2,,ana_1,a_2,\ldots,a_n,其中 aia_i 表示第 ii 台服务器的在线时长。

第三行包含 nn 个整数 p1,p2,,pnp_1,p_2,\ldots,p_n,其中 pkp_k 表示一个长度为 kk 的集群每秒完成的任务数。

输出格式

输出一个整数,表示所有集群完成的任务总数对 998244353998244353 取模的结果。

样例

样例输入 #1

5
3 1 2 2 3
1 3 6 10 15

样例输出 #1

24

样例解释 #1

11 秒有一个长度为 55 的集群,完成 1515 个任务;第 22 秒的两个集群长度分别为 1,31,3,共完成 1+6=71+6=7 个任务;第 33 秒有两个长度为 11 的集群,共完成 22 个任务。因此答案为 15+7+2=2415+7+2=24

数据规模

注意:你只有通过了子任务的所有测试点,才能获得对应子任务的分数。

子任务编号 分数 nn\le aia_i\le
11 3030 20002000
22 3030 10510^5
33 4040 2×1052\times10^5 10910^9

对于 100%100\% 的数据,满足 1n2×1051\le n\le2\times10^50ai1090\le a_i\le10^90pi1090\le p_i\le10^9