import sys input = sys.stdin.readline inf = 20000 n, m, r = map(int, input().split()) items = [0] + list(map(int, input().split())) linked = [[inf for _ in range(n+1)] for _ in range(n+1)] for _ in range(r) : u, v, w = map(int, input().split()) linked[u][v] = w linked[v][u] = w for i in range(1, n+1) : linked[i][i] = 0 for k in range(1, n+1) : for i in range(1, n+1) : for j in range(1, n+1) : if linked[i][j] > linked[i][k] + linked[k][j] : linked[i][j] = linked[i][k] + linked[k][j] max_items = 0 for i in range(1,n+1) : temp = 0 for j in range(1,n+1) : if linked[i][j] <= m : temp += items[j] max_items = max(max_items, temp) print(max_items)