얽힌 케이블

시간 제한1초메모리 제한128 MB

문제

당신은 SmallCableCo의 사장으로, 작은 마을의 사업권을 사들였습니다. 하지만 사업을 제대로 시작할 자금이 부족해, 예전에 사들인 낡은 창고에서 찾아낸 부품들에 의존하고 있습니다. 그 부품들 중에는 케이블이 감긴 실패(스풀) 하나와 많은 커넥터가 있습니다.

당신은 이 케이블만으로 마을의 모든 집을 연결할 수 있는지 알고 싶습니다. 마을 지도에는 집들 사이에 케이블을 놓을 수 있는 모든 경로와 각 경로의 거리가 표시되어 있습니다. 모든 집을 하나로 연결하는 데 필요한 케이블의 최소 길이를 구하세요.

입력

입력에는 마을 하나의 정보만 주어집니다.

  • 첫째 줄: 실패에 감긴 케이블의 길이가 실수로 주어집니다.
  • 둘째 줄: 집의 개수 $N$.
  • 다음 $N$개의 줄: 각 집주인의 이름이 한 줄에 하나씩 주어집니다. 이름은 공백이나 문장부호 없이 {a–z, A–Z, 0–9}로만 이루어진 최대 20자의 문자열입니다.
  • 그 다음 줄: 집들 사이 경로의 개수 $M$.
  • 다음 $M$개의 줄: 각 줄은 집이름A 집이름B 거리 형식입니다. 두 집 이름은 위 목록에 있는 서로 다른 두 집과 일치하며, 거리는 양의 실수입니다. 같은 두 집 사이에 두 개 이상의 경로가 주어지는 일은 없습니다.

출력

출력은 한 줄입니다.

마을의 모든 집을 연결하기에 케이블이 부족하다면 다음을 출력합니다.

Not enough cable

케이블이 충분하다면 다음을 출력합니다.

Need <X> miles of cable

여기서 $X$는 모든 집을 연결하는 데 필요한 케이블의 최소 길이이며, 소수 첫째 자리(0.1 마일)까지 반올림하여 출력합니다.