시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 1024 MB73326122139.677%

문제

하나의 정수로 평가(evaluate)될 수 있는 함수 문자열은 다음과 같이 정의된다.

  1. x는 함수 문자열이다. 위 문자열은 $0$으로 평가된다.
  2. S가 함수 문자열이면, gS도 함수 문자열이다. 위 문자열은 S가 평가된 값에 $1$을 더한 값으로 평가된다.
  3. S, T가 함수 문자열이면, fST도 함수 문자열이다. 위 문자열은 ST가 평가된 값 중 더 크지 않은 값으로 평가된다.

문자열이 주어지면 함수 문자열인지 확인하고, 만약 그렇다면 평가한 값을 구하자.

입력

첫 번째 줄에 f, g, x로만 이루어진 문자열 $S$가 주어진다. $(1 \leq$ $|S|$ $\leq 1\,000\,000)$

출력

첫 번째 줄에 주어진 문자열이 함수 문자열이라면 평가하여 값을 출력하고, 그렇지 않다면 -1을 출력한다.

예제 입력 1

fggxgx

예제 출력 1

1

예제 입력 2

xxx

예제 출력 2

-1

예제 입력 3

gggx

예제 출력 3

3

출처

University > 한양대학교 ERICA 캠퍼스 > Zero One Algorithm Contest 2023 C번