https://programmers.co.kr/learn/courses/30/lessons/81301?language=cpp
코딩테스트 연습 - 숫자 문자열과 영단어
네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자
programmers.co.kr
하다가 문자열을 어떻게 처리해야 할지 도저히 못 풀겠어서 그냥 블로그에서 파이썬 코드 봤는데 너무 짧게 쉽게 구현되길래 현타가 왔다.... 파이썬이 진짜 대박이긴 한 것 같다
그리고 C++ 다른 사람 코드도 봤는데 파이썬 만큼이나 간단하게 구현할 사람이 있어 그 코드를 참고했다.
regex_repalce 함수를 통해 문자열을 바꿀 수 있었다. 미쳤다... 알아야 할 게 너무 많다 ㄹㅇ
regex_replace 에 대한 참고 블로그 글 ( replace 와 regex_replace 모두 깔끔하게 정리 잘 해놓으셨다👍👍 )
https://ponyozzang.tistory.com/678
#include <string>
#include <vector>
#include <regex>
//타인의 코드풀이를 보고 적용해 다시 작성한 코드
using namespace std;
string num_text[] = {"zero", "one", "two", "three", "four", "five",
"six", "seven", "eight", "nine"};
int solution(string s) {
int answer = -1;
for(int i= 0; i<10; i++) {
s = regex_replace(s, regex(num_text[i]), to_string(i));
}
answer = stoi(s);
return answer;
}
'CodingTest Practice > Programmers' 카테고리의 다른 글
프로그래머스 : 더 맵게(C++, Lv.2, 힙) (0) | 2022.05.12 |
---|---|
프로그래머스 : 타겟넘버(C++, Lv.2, DFS) (0) | 2022.01.29 |
프로그래머스 : 없는 숫자 더하기 (C++, Lv.1) (0) | 2021.12.30 |
프로그래머스 : 신규 아이디 추천 (C++, Lv.1) (0) | 2021.12.30 |
프로그래머스 : 문자열 다루기 기본 (C++) (0) | 2021.12.30 |