测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A9245. Find Maximum

编程题 普及/提高-

题目描述

Valera has array $a$ , consisting of $n$ integers $a_{0},a_{1},...,a_{n-1}$ , and function $f(x)$ , taking an integer from $0$ to $2^{n}-1$ as its single argument. Value $f(x)$ is calculated by formula ![](/uploads/acgo/image/67b3f36ef39494a6_a6fb72ed9c16.jpeg), where value $bit(i)$ equals one if the binary representation of number $x$ contains a $1$ on the $i$ -th position, and zero otherwise.

For example, if $n=4$ and $x=11$ $(11=2^{0}+2^{1}+2^{3})$ , then $f(x)=a_{0}+a_{1}+a_{3}$ .

Help Valera find the maximum of function $f(x)$ among all $x$ , for which an inequality holds: $0<=x<=m$ .

输入格式

The first line contains integer $n$ $(1<=n<=10^{5})$ — the number of array elements. The next line contains $n$ space-separated integers $a_{0},a_{1},...,a_{n-1}$ $(0<=a_{i}<=10^{4})$ — elements of array $a$ .

The third line contains a sequence of digits zero and one without spaces $s_{0}s_{1}...\ s_{n-1}$ — the binary representation of number $m$ . Number $m$ equals ![](/uploads/acgo/image/7e264b8ac15b9e68_8ec2481ae6fe.jpeg).

输出格式

Print a single integer — the maximum value of function $f(x)$ for all ![](/uploads/acgo/image/e47de3252efb893a_38e23518938e.jpeg).

输入输出样例

输入 #1
2
3 8
10
输出 #1
3
输入 #2
5
17 0 10 2 1
11010
输出 #2
27

说明/提示

In the first test case $m=2^{0}=1,f(0)=0,f(1)=a_{0}=3$ .

In the second sample $m=2^{0}+2^{1}+2^{3}=11$ , the maximum value of function equals $f(5)=a_{0}+a_{2}=17+10=27$ .
上一题 去做题 下一题