숫자 더하기


답안 제출

Points: 8
시간 제한: 2.0s
메모리 제한: 1G

문제 유형

공백 없이 여러 숫자가 이어진 문자열 \(S\)가 주어진다.

\(S\)를 왼쪽부터 순서대로 여러 조각으로 나누려고 한다. 각 조각은 한 자리 또는 두 자리여야 하며, 모든 숫자를 빠짐없이 정확히 한 번 사용해야 한다. 각 조각을 십진수로 보았을 때, 조각으로 얻은 수들의 합이 최대가 되도록 나누어야 한다.

가능한 합의 최댓값을 구하시오.

입력

첫째 줄에 숫자로만 이루어진 문자열 \(S\)가 주어진다.

출력

\(S\)를 한 자리 또는 두 자리씩 나누어 얻을 수 있는 수들의 합의 최댓값을 출력한다.

제한 사항

  • \(1 \le |S| \le 10\)
  • \(S\)가 두 자리 이상이면 첫 번째 문자는 0이 아니다.
  • \(S\)를 하나의 십진수로 보았을 때 그 값은 \(2,000,000,000\) 이하이다.
  • 두 자리 조각의 첫 번째 숫자가 0일 수 있으며, 이 경우에도 해당 조각을 십진수로 해석한다.

예제 입력 1

314159

예제 출력 1

131

예제 설명 1

31 | 41 | 59로 나누면 합은 \(31+41+59=131\)이다. 이보다 큰 합을 만들 수 없다.

예제 입력 2

12345

예제 출력 2

69

예제 설명 2

1 | 23 | 45로 나누면 합은 \(1+23+45=69\)이다. 이보다 큰 합을 만들 수 없다.


코멘트

현재 작성된 코멘트가 없습니다.