실수 파싱하기
면접 대비시간 제한1초메모리 제한128 MB
T개의 줄에 대해 부호, 소수점, 지수를 포함한 실수 표기법을 만족하는지 판별하는 문제다. 앞뒤 공백은 허용한다.
문제
입력으로 주어진 한 줄이 올바른 실수(real number)를 나타내는지 판별하는 프로그램을 작성하세요.
실수는 소수점, 지수부(문자 e 또는 E로 시작), 또는 둘 다를 가질 수 있으며, 여기에 일반적인 십진 숫자로 이루어집니다. 규칙은 다음과 같습니다.
- 소수점이 있다면, 소수점의 양쪽에 각각 최소 한 개 이상의 숫자가 있어야 합니다.
- 숫자 앞과 지수부 앞에는 각각 부호(
+또는-)가 올 수 있으며, 부호 바로 뒤에는 공백이 올 수 없습니다. - 지수부가 있다면 정수여야 하며 소수점을 포함할 수 없습니다.
- 수의 앞이나 뒤에는 공백 문자가 올 수 있지만, 수 내부에는 공백이 올 수 없습니다.
수의 크기에는 제한이 없지만, 편의상 각 입력 줄의 길이는 최대 1000자라고 가정해도 됩니다.
입력
첫째 줄에 테스트 케이스의 개수 가 주어집니다. 이어지는 개의 줄에는 각각 검사할 입력 한 줄이 주어집니다.
출력
각 테스트 케이스마다 한 줄씩 출력합니다. 해당 줄이 올바른 실수이면 LEGAL을, 그렇지 않으면 ILLEGAL을 출력합니다.