ALGORITHM/programmers

[프로그래머스 Level 1] 숫자 문자열과 영단어 (C++)

yegyeom 2021. 10. 19. 01:48

문제 링크 (https://programmers.co.kr/learn/courses/30/lessons/81301)

 

코딩테스트 연습 - 숫자 문자열과 영단어

네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자

programmers.co.kr

인자로 받은 문자열에 존재하는 영단어를 대응되는 숫자로 바꾸어 원래 숫자를 완성해주면 된다.

인자로 받은 문자열을 한 글자씩 반복하며 isdigit 함수를 통해 숫자인지 아닌지 확인한다. 숫자가 아니면(문자면) while문을 통해 zero ~ nine 중 하나의 단어가 될 때까지 임시 문자열(tmp)에 문자를 이어 붙인다. 문자열이 완성되면 대응되는 숫자를 정답 문자열(str)에 이어 붙인다. while문이 끝나고 i를 감소시키지 않으면 문자를 건너뛰므로 주의!

문자열의 길이만큼 반복이 끝난 후 stoi를 통해 숫자로 이루어진 문자열 str을 정수로 변환한다. 


[소스코드]