부분 문자열 값의 평균
면접 대비시간 제한1초메모리 제한2048 MB
길이가 20만 이하인 숫자 문자열에서 모든 부분 문자열의 최댓값 평균을 구해 기약분수로 출력합니다.
문제
를 10진수 숫자(0부터 9까지)로만 이루어진 비어 있지 않은 문자열이라고 하자. 의 길이를 이라 하고, 왼쪽에서 오른쪽으로 숫자에 의 번호를 붙인다. 인 에 대해 는 번째 자리부터 번째 자리까지의 부분 문자열(양 끝 포함)을 뜻한다. 비어 있지 않은 부분 문자열만 고려한다.
각 부분 문자열의 값은 그 안에서 가장 큰 숫자로 정한다. 의 모든 부분 문자열 값의 평균은 얼마인가?
문자열이 같더라도 위치가 다르면 서로 다른 부분 문자열로 센다. 예를 들어 가 1010이면 와 는 둘 다 10이지만 따로 센다. 두 값 모두 이다.
입력
한 줄에 10진수 숫자로 이루어진 비어 있지 않은 문자열 가 주어진다. 의 길이는 최대 이다.
출력
평균값을 한 줄에 출력한다. 평균이 정수이면 그 정수를 출력한다. 평균이 (단, 와 는 양의 정수이고 )로 표현되는 진분수이면, 기약분수로 줄여 분자와 분모를 /로 구분해 출력한다. 평균이 보다 크고 정수가 아니면 정수 부분, 공백, 기약 진분수 순서로 출력한다.