안녕하세요! 문제풀다가 잠깐 게시판을 보니, 제가 푼 몇 안되는 문제 중에서 질문이 있네요.
일단 저는 백트래킹으로 풀지는 않았습니다. ㅠ
INPUT-------------------
2
GCF
ACDEB
--------------------------
라는 입력이 들어왔다고 생각해볼까요?
그렇다면, 각각의 알파벳(A, B, C, D, ....)에 숫자를 (A -> a, B -> b, C -> c, ....)를 이렇게 미지수로 두고 덧셈을 해보면, 위 덧셈식의 결과값은
a * (10000) + b * (1) + c * (1000 + 10) + d * (100) + e * (10) + f * (1)
이라고 볼 수 있습니다.
이 식을 계수에 관해 내림차순으로 정리해보면,
a * (10000) + c * (1000 + 10) + d * (100) + e * (10) + b * (1) + f * (1)
이렇게 되고,
앞에서부터 a -> 9, c -> 8, d -> 7, ...., f -> 4 를 배정해야 결과값이 가장 크게 되겠죠. 끝입니다.
화이팅!
jigns153 3년 전
백트래킹으로 풀어봤는데 score에서 시간을 더 줄여야 할 것 같은데
어떻게 줄여야할지 모르겠습니다.