A tradicional feira anual de artesanatos da sua cidade está chegando.
O dono de uma das barracas mais populares da feira pediu a sua ajuda
para registrar o lucro da barraca ao fim do dia.
Existem dois tipos de objetos que podem ser vendidos na barraca, o
tipo
e o tipo
.
No início do dia, você registra todo o estoque atual da barraca, que
contém
objetos numerados de
a
.
O
-ésimo
objeto possui tipo
e preço
(em reais). Observe que a barraca pode possuir mais de um objeto do
mesmo tipo em estoque, e não é garantido que ambos os
tipos estão em estoque.
Durante o dia,
clientes vão visitar a barraca, um de cada vez. Todo cliente vai comprar
no máximo um objeto, pagando à barraca o preço dele. Cada cliente pode
ser decidido ou indeciso:
- Um cliente decidido sabe qual tipo de objeto ele deseja
comprar. Ao visitar a barraca, um cliente decidido compra o objeto do
tipo desejado que possui o menor preço. Caso existam mais de um objeto
com o tipo desejado e preço mínimo, ele compra qualquer um destes
objetos, mas somente um. Caso não exista nenhum objeto com o tipo
desejado disponível, o cliente decidido vai embora sem comprar
nada.
- Um cliente indeciso se importa mais com o preço do objeto
do que com o tipo, usando o tipo do objeto apenas como critério de
desempate. Mais especificamente, ao visitar a barraca, um cliente
indeciso compra o objeto que possui menor preço entre todos os objetos
disponíveis. Caso existam vários objetos com preço mínimo, ele compra o
objeto cujo tipo é mínimo. O cliente indeciso só vai embora sem comprar
nada caso não existam mais objetos disponíveis.
Vale ressaltar que cada um dos
objetos só pode ser comprado uma vez, e um objeto que é comprado é
removido do estoque.
Sua tarefa é calcular o valor total que a barraca arrecadou com
vendas após as visitas dos
clientes.
Entrada
A primeira linha da entrada possui um único inteiro
,
a quantidade de objetos em estoque no início do dia.
A segunda linha da entrada possui
inteiros
,
os tipos dos N objetos.
A terceira linha da entrada possui
inteiros
,
os preços em reais dos
objetos, na mesma ordem da linha anterior.
A quarta linha da entrada possui um único inteiro
,
o número de clientes que vão visitar a barraca.
A quinta linha da entrada possui
inteiros
e descrevem os clientes na ordem em que visitaram a barraca. Mais
especificamente:
- Se o
-ésimo
cliente é decidido,
é o tipo de objeto desejado.
- Se o
-ésimo
cliente é indeciso,
.
Saída
Seu programa deverá imprimir uma única linha contendo um único
inteiro, o total em reais que a barraca recebeu ao longo do dia.
Restrições
É garantido que todo caso de teste satisfaz as restrições abaixo.
-
para
-
para
-
para
A tarefa vale
pontos. Estes pontos estão distribuídos em subtarefas, cada uma com suas
restrições adicionais às definidas acima.
- Subtarefa 1 (0 pontos): Esta subtarefa é composta
apenas pelos exemplos mostrados abaixo. Ela não vale pontos, serve
apenas para que você verifique se o seu programa imprime o resultado
correto para os exemplos.
- Subtarefa 2 (17 pontos):
e
.
- Subtarefa 3 (14 pontos): Todos os clientes são
indecisos.
- Subtarefa 4 (21 pontos): Todos os clientes são
decididos.
- Subtarefa 5 (15 pontos): Todos os objetos possuem
preço 1.
- Subtarefa 6 (33 pontos): Sem restrições
adicionais.
Exemplo de Entrada 1
7
2 1 1 1 2 2 2
34 81 12 3 90 3 10000
6
0 1 0 1 2 1
Exemplo de Saída 1
133
Exemplo de Entrada 2
7
1 1 2 1 2 2 1
7 3 4 1 8 5 10
8
0 2 0 0 1 1 1 1
Exemplo de Saída 2
30