fmt = list(input())
ret = 1
for i in range(len(fmt)):
if fmt[i] == 'd':
fmt[i] = 10
else:
fmt[i] = 26
for i in range(1, len(fmt)):
if fmt[i] == fmt[i - 1]:
fmt[i - 1] -= 1
for i in fmt:
ret *= i
print(ret)
문제 :
해결방법: 처음엔 백트래킹으로 모든 경우의 수를 구해보려 했으나, 굳이 백트래킹을 사용하지 않고 단순하게 풀 수 있을것 같았다.
1)리스트에서 'D'인 경우 10으로 바꾸고 'C'인 경우 26으로 바꾼다.(숫자는 0~9까지 10의 자리이고, 문자는 'a'~'z'까지 26개이기 때문)
2)연속하여 똑같은 문자가 나왔을 경우만 -1을 해준 다.(연속하여 똑같은 수가 올 수 없기 때문)
3)리스트의 값을 다 더해서 정답을 구한다.