728x90
반응형
https://programmers.co.kr/learn/courses/30/lessons/81301
using System;
public class Solution {
string Change(string num)
{
if (num == "zero") return "0";
if (num == "one") return "1";
if (num == "two") return "2";
if (num == "three") return "3";
if (num == "four") return "4";
if (num == "five") return "5";
if (num == "six") return "6";
if (num == "seven") return "7";
if (num == "eight") return "8";
if (num == "nine") return "9";
return null;
}
public int solution(string s) {
int answer = 0;
string _tempNum = "";
string _tempStr = "";
for (int i = -1; ++i < s.Length;)
{
if (int.TryParse(s[i].ToString(), out int temp)) _tempNum += s[i];
else _tempStr += s[i];
if (_tempStr != "")
if (Change(_tempStr) != null)
{
_tempNum += Change(_tempStr);
_tempStr = "";
}
}
answer = Convert.ToInt32(_tempNum);
return answer;
}
}
문자열 반환 미리 만들어 두고
int로 변환 가능하면 바로 넣어주고 아니면 임시 문자열에 추가
그 뒤 문자열 검사하고 반환값이 null이 아니면 값을 반환받은 거니까 임시 문자열 비워주고
반응형
'프로그래머스_C# > Level_1' 카테고리의 다른 글
[프로그래머스 C#] 로또의 최고 순위와 최저 순위 (0) | 2021.09.10 |
---|---|
[프로그래머스 C#] 4주차 직업군 추천하기 (0) | 2021.09.10 |
[프로그래머스 C#] 음양 더하기 (0) | 2021.09.09 |
[프로그래머스 C#] 소수 만들기 (0) | 2021.09.08 |
[프로그래머스 C#] 내적 (0) | 2021.09.08 |