코딩굼벵이
구르는 중
코딩굼벵이
  • 분류 전체보기 (116)
    • [C_C++]이론 공부 (17)
      • 알고리즘 (11)
      • 이론+STL (6)
    • [C_C++]코딩테스트 연습 (45)
      • [프로그래머스] level 1 (26)
      • [프로그래머스] level 2 (5)
      • [백준] 일반 문제 (12)
      • 기타 (2)
    • Solana (28)
      • Documentation (9)
      • Validator - 공부 (10)
      • Validator - 실행 (devnet & te.. (6)
      • 그 외 (3)
    • React (4)
    • Linux (2)
    • Javascript (2)
    • 블록체인 기반 핀테크 및 응용 SW 개발 (8)
      • React (1)
      • Javascript (3)
      • Solidity (3)
      • 프로젝트 (1)
    • 기타 (10)

블로그 메뉴

  • 🌟 깃허브
  • 🌿 Portfolio(2021)
  • 홈
  • 태그
  • 방명록

티스토리

최근 글

태그

  • 밸리데이터
  • Immer #ContextAPI
  • 솔라나
  • Hooks #React
  • grafana
  • 모니터링

인기 글

전체 방문자
오늘
어제
hELLO · Designed By 정상우.
코딩굼벵이

구르는 중

[C++] 프로그래머스 - 숫자 문자열과 영단어
[C_C++]코딩테스트 연습/[프로그래머스] level 1

[C++] 프로그래머스 - 숫자 문자열과 영단어

2021. 7. 16. 19:15
728x90

내 풀이

주요 포인트 )

  1. string에 char를 붙인다.
  2. int에 숫자를 하나씩 붙이려면 10을 곱해서 붙이면 된다.
  3. answer에 숫자를 붙이고 나면 tmp는 비운다. 이를 위해 문자가 완성되지 않았을 때는 else continue 를 주었다.
  4. char를 숫자로 바꾸려면 '0'을 빼주면 된다.
#include <string>
#include <vector>

using namespace std;

int solution(string s) {
    int answer = 0;
    string tmp;
    for (int i = 0; i < s.size(); i++) {
        if (s[i] >= 'a' && s[i] <= 'z') {
            tmp += s[i];
            if (tmp == "zero") answer *= 10;
            else if (tmp == "one") answer = answer * 10 + 1;
            else if (tmp == "two") answer = answer * 10 + 2;
            else if (tmp == "three") answer = answer * 10 + 3;
            else if (tmp == "four") answer = answer * 10 + 4;
            else if (tmp == "five") answer = answer * 10 + 5;
            else if (tmp == "six") answer = answer * 10 + 6;
            else if (tmp == "seven") answer = answer * 10 + 7;
            else if (tmp == "eight") answer = answer * 10 + 8;
            else if (tmp == "nine") answer = answer * 10 + 9;
            else continue;
            tmp = "";
        }
        else answer = answer * 10 + (s[i] - '0');
    }

    return answer;
}

 

'[C_C++]코딩테스트 연습 > [프로그래머스] level 1' 카테고리의 다른 글

[C++] 프로그래머스 - 3진법 뒤집기  (0) 2021.07.18
[C++] 프로그래머스 - 실패율 (pair, sort - bool)  (0) 2021.07.18
[C++] 프로그래머스 - 약수의 개수와 덧셈  (0) 2021.07.14
[C++] 프로그래머스 - 로또의 최고 순위와 최저 순위  (0) 2021.07.13
[C++] 프로그래머스 - 예산  (0) 2021.07.13
    '[C_C++]코딩테스트 연습/[프로그래머스] level 1' 카테고리의 다른 글
    • [C++] 프로그래머스 - 3진법 뒤집기
    • [C++] 프로그래머스 - 실패율 (pair, sort - bool)
    • [C++] 프로그래머스 - 약수의 개수와 덧셈
    • [C++] 프로그래머스 - 로또의 최고 순위와 최저 순위
    코딩굼벵이
    코딩굼벵이
    구르는 재주 연마 중

    티스토리툴바