코딩
면접 대비시간 제한1초메모리 제한1024 MB
인접한 두 자리 숫자 쌍(값 10부터 10+n-1)을 겹치지 않게 골라 첫 n개 알파벳으로 바꿀 때 만들 수 있는 서로 다른 문자열의 개수를 센다.
문제
'0'부터 '9'까지의 숫자로 이루어진 문자열이 주어진다. 이 문자열에서 연속한 숫자 두 개로 이루어진 쌍 몇 개를 다음 규칙에 따라 라틴 알파벳 소문자로 바꾸어 코딩한다: 10 → 'a', 11 → 'b', 12 → 'c', …, 34 → 'y', 35 → 'z'. 예를 들어 문자열 "1234"에서 첫 번째 숫자 쌍을 12에 해당하는 문자로 바꾸면 "c34"가 된다. 숫자 쌍 "23"을 문자 "n"으로 바꾸어 "1n4"로 코딩할 수도 있다. 두 연속 숫자 쌍을 모두 바꾸면 "cy"가 된다.
라틴 알파벳의 처음 n개 소문자를 사용해 주어진 숫자 문자열을 이 방식으로 코딩할 때 얻을 수 있는 서로 다른 문자열의 개수를 구하는 프로그램 code를 작성하라. 예를 들어 n = 5이면 'a', 'b', 'c', 'd', 'e'를 사용한다. n = 0이면 코딩에 문자를 사용하지 않는다.
입력
첫째 줄에 정수 n이 주어진다. 둘째 줄에 주어진 문자열이 주어진다.
출력
구하는 개수를 나타내는 정수 하나를 출력한다.
제한
0 ≤ n ≤ 26; 주어진 문자열은 숫자로 이루어져 있고 길이는 50 이하이다.