출입 문자열 text는 횟수E 또는 횟수L 명령을 빈틈없이 이어 붙인 형태예요. E는 그 횟수만큼 입장, L은 그 횟수만큼 퇴장을 뜻해요. 처음 인원은 0이고 퇴장 요청이 현재 인원보다 많으면 0까지 줄여요. 명령 순서대로 처리한 최종 인원과 처리 중 최대 인원을 반환해요.
solution(text)가 [최종 인원, 최대 인원]을 반환하도록 잘못된 한 줄을 고쳐 주세요.
매개변수와 반환값
- text 길이는 2~500이고 올바른 명령만 한 개 이상 들어 있어요. 공백은 없어요.
- 횟수는 0
999의 십진 정수이며 앞에 불필요한 0은 없어요. 숫자는 09 문자만 사용해요. - 반환 리스트 길이는 2예요. 최대 인원은 초기 상태 0도 포함해요.
예시
text = '12E3L4E'이면 결과는[13, 13]이에요.text = '5L2E10L3E'이면 결과는[3, 3]이에요.
실행용 입출력
한 줄에 text를 입력하고 두 결과를 공백으로 출력해요.
예시 입력
12E3L4E
예상 결과
13 13
예시 입력
5L2E10L3E
예상 결과
3 3
핵심 개념
string-parsing: 문자 하나와 여러 자리 숫자를 구분해요.text[i]는 i번째 문자,.isdigit()은 숫자 문자인지 확인해요. 입력 계약에서는 0~9만 숫자로 사용해요.counting-aggregation: 현재 인원과 최대 인원은 서로 다른 상태예요. 퇴장 뒤 최종 인원이 작아져도 이전 최대값은 유지해요.conditionals:max(0, current - amount)는 0 아래로 내려가지 않게 해요.
int('7')은 문자열을 정수 7로, str(7)은 정수를 문자열로 바꿔요. 여러 자리 수는 왼쪽 숫자를 읽은 상태에 다음 숫자를 이어 계산해요. len(text)는 문자열 길이예요. 문자를 추가할 때 문자열의 +는 이어 붙이기예요.