하리 머르데카

아직 제출이 없습니다시간 제한3초메모리 제한256 MB

문제

말레이시아의 독립기념일은 하리 머르데카라고 부른다. 1957년 말라야 연방이 영국 식민 통치에서 벗어난 것을 기념해 매년 8월 31일에 열린다. 8월 한 달 동안 많은 말레이시아 사람이 집 발코니와 자기가 가진 탈것에 국기를 단다. 유모차도 예외가 아니다. 이날 행사에서는 "Merdeka!"를 일곱 번 외친다.

내년 독립기념일을 앞두고 IIUM은 본교 캠퍼스 둘레에 긴 배너를 걸기로 했다. 준비 위원회는 학생과 교수에게 힘이 되는 문구를 이 배너에 쓰려고 한다. 조건은 두 가지다. 모든 단어를 띄어쓰기 없이 한 줄로 이어 쓴다. 그리고 단어끼리 겹쳐도 된다. 예를 들어 WORDER 안에는 WORD와 ORDER가 들어 있다. 아래에서는 배너에 적힌 문자열을 텍스트라고 부른다.

위원회는 단어 목록을 만들고 각 단어에 점수를 매겼다. 텍스트의 점수는 단어가 텍스트에 나타난 횟수마다 그 단어의 점수를 더한 값이다. WORD의 점수가 5이고 ORDER의 점수가 8이면 텍스트 WORDER의 점수는 5+8=135 + 8 = 13이다. 텍스트 WORDWORDER에서는 WORD가 두 번 나타나므로 점수가 5+5+8=185 + 5 + 8 = 18이다.

위원회는 텍스트의 글자를 하나하나 손으로 만들려고 한다. 글자를 하나 만들 때마다 비용이 들고 위원회의 예산은 정해져 있다.

예산을 넘지 않으면서 점수가 가장 높은 텍스트를 찾아라. 텍스트 자체는 출력하지 않고 그 점수만 출력하면 된다.

입력

첫 줄에 테스트 케이스의 개수 TT가 주어진다. (T30T \le 30)

각 케이스의 첫 줄에는 세 정수 NN, MM, BB가 주어진다. NN은 쓸 수 있는 문자의 개수, MM은 단어의 개수, BB는 예산이다. (1<N261 < N \le 26, 1M1001 \le M \le 100, 10B20010 \le B \le 200)

다음 NN개의 줄에는 문자 HiH_i와 정수 CiC_i가 주어진다. HiH_i는 A부터 Z까지 중 하나이고, CiC_i는 텍스트에 HiH_i를 하나 쓰는 비용이다. (1Ci31 \le C_i \le 3) HiH_i는 모두 서로 다르다.

이어지는 MM개의 줄에는 단어 WiW_i와 정수 SiS_i가 주어진다. SiS_i는 그 단어의 점수다. (1Wi1001 \le |W_i| \le 100, 1Si1001 \le S_i \le 100)

단어에 나오는 문자는 모두 HiH_i 중에 있다. 텍스트에는 주어진 NN개의 문자만 쓸 수 있고, 텍스트의 비용은 쓴 글자 하나하나의 비용을 모두 더한 값이다.

출력

각 케이스마다 Case #X: Y 형식으로 한 줄씩 출력한다. XX는 1부터 시작하는 케이스 번호이고, YY는 그 케이스에서 얻을 수 있는 가장 높은 점수다. 예산 안에서 어떤 단어도 나타나게 할 수 없으면 0을 출력한다.

힌트

첫 번째 예제의 첫 케이스에서 점수가 가장 높은 텍스트는 AAAAA다. AA가 네 번, AAA가 세 번 나타나므로 점수는 4×10+3×30=1304 \times 10 + 3 \times 30 = 130이다. AAAAA를 쓰려면 A가 다섯 개 필요하고 A 하나의 비용이 2이므로 전체 비용은 10이다.