4162: 「NOI2015」品酒大会
内存限制:256 MB
时间限制:1.000 S
评测方式:文本比较
命题人:
提交:0
解决:0
题目描述
一年一度的「幻影阁夏日品酒大会」隆重开幕了。大会包含品尝和趣味挑战两个环节,分别向优胜者颁发「首席品酒家」和「首席猎手」两个奖项,吸引了众多品酒师参加。
在大会的晚餐上,调酒师 Rainbow 调制了 $n$ 杯鸡尾酒。这 $n$ 杯鸡尾酒排成一行,其中第 $i$ 杯酒 ($1 \leq i \leq n$) 被贴上了一个标签 $s_i$,每个标签都是 $26$ 个小写英文字母之一。设 $\mathrm{Str}(l, r)$ 表示第 $l$ 杯酒到第 $r$ 杯酒的 $r − l + 1$ 个标签顺次连接构成的字符串。若 $\mathrm{Str}(p, p_0) = \mathrm{Str}(q, q_0)$,其中 $1 \leq p \leq p_0 \leq n$,$1 \leq q \leq q_0 \leq n$,$p \neq q$,$p_0 − p + 1 = q_0 − q + 1 = r$,则称第 $p$ 杯酒与第 $q$ 杯酒是「$r$ 相似」的。当然两杯「$r$ 相似」($r > 1$)的酒同时也是「$1$ 相似」、「$2$ 相似」、$\dots$、「$(r − 1)$ 相似」的。特别地,对于任意的 $1 \leq p, q \leq n$,$p \neq q$,第 $p$ 杯酒和第 $q$ 杯酒都是「$0$ 相似」的。
在品尝环节上,品酒师 Freda 轻松地评定了每一杯酒的美味度,凭借其专业的水准和经验成功夺取了「首席品酒家」的称号,其中第 $i$ 杯酒 ($1 \leq i \leq n$) 的美味度为 $a_i$。现在 Rainbow 公布了挑战环节的问题:本次大会调制的鸡尾酒有一个特点,如果把第 $p$ 杯酒与第 $q$ 杯酒调兑在一起,将得到一杯美味度为 $a_p \cdot a_q$ 的酒。现在请各位品酒师分别对于 $r = 0, 1, 2, \dots, n − 1$,统计出有多少种方法可以选出两杯「$r$ 相似」的酒,并回答选择两杯「$r$ 相似」的酒调兑可以得到的美味度的最大值。
输入
输入文件的第一行包含一个正整数 $n$,表示鸡尾酒的杯数。
第二行包含一个长度为 $n$ 的字符串 $S$,其中第 $i$ 个字符表示第 $i$ 杯酒的标签。
第三行包含 $n$ 个整数,相邻整数之间用单个空格隔开,其中第 $i$ 个整数表示第 $i$ 杯酒的美味度 $a_i$。
输出
输出文件包括 $n$ 行。第 $i$ 行输出两个整数,中间用单个空格隔开。第一个整数表示选出两杯「$(i − 1)$ 相似」的酒的方案数,第二个整数表示选出两杯「$(i − 1)$ 相似」的酒调兑可以得到的最大美味度。若不存在两杯「$(i − 1)$ 相似」的酒,这两个数均为 $0$。
样例输入 复制
10
ponoiiipoi
2 1 4 7 4 8 3 6 4 7
样例输出 复制
45 56
10 56
3 32
0 0
0 0
0 0
0 0
0 0
0 0
0 0
提示
输入样例2
12 abaabaabaaba 1 -2 3 -4 5 -6 7 -8 9 -10 11 -12
输出样例2
66 120 34 120 15 55 12 40 9 27 7 16 5 7 3 -4 2 -4 1 -4 0 0 0 0
数据范围: | Case # | $n$ 的规模 | $a_i$ 的规模 | 备注 | |:-:|:-:|:-:|:-:| | 1 | $n = 100$ | $\lvert a_i \rvert \leq 10000$ | - | | 2 | $n = 200$ | $\lvert a_i \rvert \leq 10000$ | - | | 3 | $n = 500$ | $\lvert a_i \rvert \leq 10000$ | - | | 4 | $n = 750$ | $\lvert a_i \rvert \leq 10000$ | - | | 5 | $n = 1000$ | $\lvert a_i \rvert \leq 1000000000$ | - | | 6 | $n = 1000$ | $\lvert a_i \rvert \leq 1000000000$ | - | | 7 | $n = 2000$ | $\lvert a_i \rvert \leq 1000000000$ | - | | 8 | $n = 2000$ | $\lvert a_i \rvert \leq 1000000000$ | - | | 9 | $n = 99991$ | $\lvert a_i \rvert \leq 1000000000$ | 不存在「$10$ 相似」的酒 | | 10 | $n = 99991$ | $\lvert a_i \rvert \leq 1000000000$ | 不存在「$10$ 相似」的酒 | | 11 | $n = 100000$ | $\lvert a_i \rvert \leq 1000000$ | 所有 $a_i$ 的值都相等 | | 12 | $n = 200000$ | $\lvert a_i \rvert \leq 1000000$ | 所有 $a_i$ 的值都相等 | | 13 | $n = 300000$ | $\lvert a_i \rvert \leq 1000000$ | 所有 $a_i$ 的值都相等 | | 14 | $n = 300000$ | $\lvert a_i \rvert \leq 1000000$ | 所有 $a_i$ 的值都相等 | | 15 | $n = 100000$ | $\lvert a_i \rvert \leq 1000000000$ | - | | 16 | $n = 100000$ | $\lvert a_i \rvert \leq 1000000000$ | - | | 17 | $n = 200000$ | $\lvert a_i \rvert \leq 1000000000$ | - | | 18 | $n = 200000$ | $\lvert a_i \rvert \leq 1000000000$ | - | | 19 | $n = 300000$ | $\lvert a_i \rvert \leq 1000000000$ | - | | 20 | $n = 300000$ | $\lvert a_i \rvert \leq 1000000000$ | - |