ALGORITHM/programmers
[프로그래머스 Level 1] 숫자 문자열과 영단어 (C++)
yegyeom
2021. 10. 19. 01:48
문제 링크 (https://programmers.co.kr/learn/courses/30/lessons/81301)
인자로 받은 문자열에 존재하는 영단어를 대응되는 숫자로 바꾸어 원래 숫자를 완성해주면 된다.
인자로 받은 문자열을 한 글자씩 반복하며 isdigit 함수를 통해 숫자인지 아닌지 확인한다. 숫자가 아니면(문자면) while문을 통해 zero ~ nine 중 하나의 단어가 될 때까지 임시 문자열(tmp)에 문자를 이어 붙인다. 문자열이 완성되면 대응되는 숫자를 정답 문자열(str)에 이어 붙인다. while문이 끝나고 i를 감소시키지 않으면 문자를 건너뛰므로 주의!
문자열의 길이만큼 반복이 끝난 후 stoi를 통해 숫자로 이루어진 문자열 str을 정수로 변환한다.