0511 숫자 문자열과 영단어

곽경희·2022년 5월 15일
0

문제 설명

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

예시

1478 → "one4seveneight"
234567 → "23four5six7"
10203 → "1zerotwozero3"

코드

class Solution {
public int solution(String s) {
    String[] num = {"zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"}; 
    for(int i=0; i<10; i++){ 
        s = s.replace(num[i], Integer.toString(i)); 
    } 
    int answer = Integer.parseInt(s); 
    return answer; 
    } 

}

풀이

i가 10보다 작을때 s = s.replace(num[i], Integer.toString(i)); 해준다.
replace는 num[i]를 Integer.toString(i)로 바꿀때 쓰는 함수이다.
Integer.parseInt(s);을 리턴해준다.
(Integer.parseInt는 문자열을 숫자로 변환시키기 위해 사용한다)

0개의 댓글