본문 바로가기

프로그래머스/lv0

영어가 싫어요

/* 영어가 싫어요
 * 영어로 표기되어있는 숫자를 수로 바꾸려고 합니다.
 * 문자열 numbers가 매개변수로 주어질 때,
 * numbers를 정수로 바꿔 return 하도록 solution 함수
 *
 * numbers는 소문자로만 구성되어 있습니다.
 * numbers는 "zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine" 들이 공백 없이 조합되어 있습니다.
 * 1 ≤ numbers의 길이 ≤ 50
 * "zero"는 numbers의 맨 앞에 올 수 없습니다.
 *
 * numbers                                  result
 * "onetwothreefourfivesixseveneightnine"   123456789
 * "onefourzerosixseven"                    14067
 */
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
public class programmer_0_23 {
    static String a1 = "onetwothreefourfivesixseveneightnine";
    static String a2 = "onefourzerosixseven";
    public long solution(String numbers) {
        long answer = 0;
        String[] ar = {"zero""one""two""three""four""five""six""seven""eight""nine"};
        int[] num_ar = {0,1,2,3,4,5,6,7,8,9};
 
        for(int i = 0; i < ar.length; i++){
            if(a1.contains(ar[i])){
                numbers = numbers.replace(ar[i], Integer.toString(num_ar[i]));
            }
        }
        answer += Long.parseLong(numbers);
                
        return answer;
    }
    public static void main(String args[]){
        programmer_0_23 t = new programmer_0_23();
        System.out.println("---------------------------------------");
        System.out.println("result = " + t.solution(a1));
        System.out.println("---------------------------------------");
        // System.out.println("result = " + t.solution(a2));
        // System.out.println("---------------------------------------");
    }
}
cs

'프로그래머스 > lv0' 카테고리의 다른 글

한 번만 등장한 문자  (0) 2022.12.05
인덱스 바꾸기  (0) 2022.12.05
대문자와 소문자  (0) 2022.12.05
암호 해독  (0) 2022.12.05
369게임  (0) 2022.12.05