#1143 True Eye 10000

26  1 s   128 MB  

Description

Gusty Galaxy Guard 사령부의 시스템 엔지니어를 맡고 있는 당신의 주 업무는 외계의 기술이 적용된 새로운 시스템을 분석하고, GGG에 이득이 될법한 새로운 기술을 개발하는 것이다. 이제는 익숙해질 만도 하건만 아직도 우리가 살고 있는 세계 이외의 문명과 기술을 접한다는 것이 신기하기만 하다.

 

이번에 GGG측에서 입수해 온 새로운 시스템은 True Eye 10000이다. 소문에 의하면 이번에 입수한 시스템은 뇌의 흑점인가 뭔가 하는 우리의 인식 밖에 있는 영역을 통해서 발견할 수 있었다고 한다. 혹자는 제로의 영역이나 Seed라고도 부르는 것 같지만 상관없지. AT Field나 초전자포나 모두 마음먹기 나름이니까...

 

암호해독팀의 천재 소녀 테스타로사가 번역해준 기술 문서와 시스템 소스를 바탕으로 True Eye 10000의 OS 소스를 분석해 본 결과, 의외로 지금까지 밝혀진 부분의 시스템 소스는 꽤 단순한 규칙으로 구성되어 있었다. 시스템 분석의 첫 단계로써 당신은 주어진 소스들이 사용할 메모리의 사용량을 먼저 확인하고자 한다.

 

True Eye 10000의 선언문 규칙은 다음과 같다 :

1] 선언문의 가장 첫 토큰은 int, float, double, char 넷 중 하나이다.

2] 가장 첫 토큰 후에는 변수명들이 "," 토큰을 기준으로 나열된다.

3] 선언문의 끝에는 ";" 토큰이 주어지며 선언문이 종료된다.

4] 각각의 변수는 "=" 토큰을 사용하여 초기화 될 수도 있다.

5] "=" 토큰 후에는 Integer Literal만이 올 수 있다.

6] Whitespace 토큰들은 무시한다.

7] 변수명에는 Whitespace 토큰이 들어갈 수 없다.

8] 한 선언문에는 하나 이상의 변수명이 따라온다.

 

각각의 변수형에 대해서 크기가 각각 int - 4, float - 4, double - 8, char - 1일 때 각각의 선언문들이 몇 바이트의 메모리를 사용할 지 예상하는 프로그램을 작성하여 True Eye 10000 분석의 첫 발판으로 삼자.

 

 

Input

 

첫 줄에는 테스트 케이스의 숫자 T(1≤T≤10) 가 정수로 들어온다.

매 테스트 케이스의 첫 번째 줄에서는 이번 프로그램에서 분석해야 할 선언문의 숫자 N(0≤N≤300)이 정수로 들어온다.

매 테스트 케이스의 두 번째 줄에서부터는 연속하여 N개의 선언문이 입력된다.

 

 

Output

 

매 테스트 케이스에 대하여 주어진 소스가 사용할 메모리 바이트 수 A를 출력한다.

 

 

Sample Input

Sample Output

2
3
int Gaogiger, the_brave;
double NineS, index,
	maname;
char mythril = 46385304, lambda;
2
			int int;
	char LAFI=           25435         ;
34
5

Source

2010 Ajou University Programming Contest