만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

숫자 번역

시간 제한1초메모리 제한2048 MB

요약
소문자 문자열에서 영어 숫자 단어를 숫자로 바꿀 수 있을 때, 도달 가능한 가장 짧은 문자열의 길이와 그 길이를 가진 서로 다른 문자열의 개수를 9302023으로 나눈 나머지로 구합니다.
난이도

보통10점 중 7점

유형
문자열, 동적 계획법, 문자열 매칭
정답자
아직 제출이 없습니다

문제

소문자로 이루어진 문자열이 주어진다. 한 번의 연산에서 부분 문자열이 0부터 9까지 숫자를 영어로 쓴 형태("zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine") 중 하나와 같으면, 그 부분 문자열을 해당 숫자 하나로 바꿀 수 있다.

연산을 0번 이상 적용해서 만들 수 있는 가장 짧은 문자열의 길이와, 그 길이를 가지는 서로 다른 문자열의 개수를 구하라.

입력

길이가 1 이상 10610^6 이하인 소문자 문자열이 한 줄로 주어진다.

출력

두 줄에 걸쳐 출력한다.

첫째 줄에는 가능한 가장 짧은 문자열의 길이를 정수 하나로 출력한다.

둘째 줄에는 0번 이상의 연산을 적용해서 얻을 수 있는 그 길이의 서로 다른 문자열 개수를 93020239302023으로 나눈 나머지를 정수 하나로 출력한다.

예제3

  1. 예제 1

    입력
    icecreamcone
    
    예상 출력
    10
    1
    
  2. 예제 2

    입력
    onetwo
    
    예상 출력
    2
    1
    
  3. 예제 3

    입력
    twone
    
    예상 출력
    3
    2