beecrowd | 2308

Museu

Por OBI - Olimpíada Brasileira de Informática 2006 BR Brazil

Timelimit: 1

Desde que o arquiteto Frank Gehry projetou o Museu Guggenheim de Bilbao, os museus têm sido construídos com formas cada vez mais complexas, fugindo de padrões pré-estabelecidos e de simetrias. Um típico museu moderno é composto por um conjuto de salas ligadas por corredores e escadas, sem preocupação com a prédefinição de caminhos a serem seguidos pelas pessoas.

Henriqueta é uma professora do ensino fundamental que deseja visitar o museu da Ordem Brasileira de Medicina (OBM) para mostrar aos seus alunos de ciências como o corpo humano funciona e como as cirurgias eram feitas nos séculos XIX e XX. Henriqueta quer planejar uma visita pelas salas do museu, obedecento as seguintes restrições:

Um estudo preliminar, realizado pelo próprio museu, indica o tempo médio que cada visitante fica em uma sala e quanto tempo leva-se para atravessar um corredor ou uma escada. Henriqueta quer a sua ajuda para calcular o tempo total da menor visita que ela pode efetuar, obedecendo as restrições dadas.

Escreva um programa que, dados um conjunto de salas, um conjunto de corredores e escadas que ligam essas salas e o tempo necessário para percorrer cada sala e cada corredor, determine qual é o menor tempo possível para uma visita. Note que o tempo de visita da sala onde a visita se inicia deve ser contado apenas uma vez.

Entrada

A entrada contém um único conjunto de testes, que deve ser lido do dispositivo de entrada padrão (normalmente o teclado). A primeira linha da entrada contém dois inteiros S e C, que indicam, respectivamente, o número de salas (1 ≤ S ≤ 1000) e o número de corredores e escadas (1 ≤ C ≤ 1000). As salas são numeradas de 1 a S. A segunda linha contém S inteiros representando o tempo gasto para percorrer cada sala. Cada uma das C linhas seguintes descreve um corredor ou escada. A descrição ´e composta por três inteiros, I, F e T , indicando que o corredor somente pode ser percorrido da sala I (1 ≤ I N) para a sala F (1 ≤ FN) no tempo T (1 ≤ T ≤ 1000). O tempo total máximo é sempre menor ou igual a 1000000.

Saída

Seu programa deve imprimir, na saída padrão, uma única linha contendo o tempo gasto na visita de menor duração que Henriqueta pode realizar no museu. Existe pelo menos uma visita que atende as restrições impostas.

Exemplos de Entrada Exemplos de Saída

2 2
1 1
1 2 1
2 1 3

6

5 6
5 5 10 10 5
1 2 1
2 3 1
5 1 1
3 4 1
4 1 1
5 2 1

34

8 10
3 10 8 4 1 1 8 1
1 2 1
1 3 10
4 1 1
5 8 1
3 7 1
7 5 2
8 4 2
2 3 2
3 6 1
6 7 2

42