트랙
/
F#
F#
/
연습 문제
/
알파메틱스
알파메틱스

알파메틱스

어려움

지침

주어진 알파메틱스 퍼즐의 정답을 찾아요.

알파메틱스는 단어의 글자를 숫자로 바꾸는 퍼즐이에요.

예를 들어 SEND + MORE = MONEY는 다음과 같아요:

  S E N D
  M O R E +
-----------
M O N E Y

이 글자들을 올바른 숫자로 바꾸면 다음과 같아요:

  9 5 6 7
  1 0 8 5 +
-----------
1 0 6 5 2

모든 글자가 서로 다른 숫자로 바뀌고, 그렇게 숫자로 옮긴 단어들이 올바른 합을 이루기 때문에 이 답은 맞아요.

각 글자는 서로 다른 숫자를 나타내야 하고, 여러 자리 수의 맨 앞자리는 0이 될 수 없어요.

힌트

  • 텍스트를 파싱하려면 FParsec 라이브러리를 사용해 볼 수 있어요.
  • 이 연습 문제는 브루트 포스 알고리즘으로도 풀 수 있지만, 실행 성능이 좋지 않을 수 있어요. 더 정교한 방법을 찾아봐요. 힌트: 학교에서 흔히 배우는 세로셈 덧셈 알고리즘을 사용해 볼 수 있어요.
GitHub에서 편집 링크가 새 창이나 탭에서 열려요
F# Exercism

알파메틱스 문제를 시작해 볼 준비가 됐나요?

Exercism에 가입하고 F# 트랙을 개념 18개연습 문제 148개, 그리고 실제 사람의 멘토링과 함께 배우고 익혀 보세요. 모두 무료예요.