영어가 싫어요 Lv. 0

박영준·2023년 6월 13일
0

코딩테스트

목록 보기
246/300
class Solution {
    public long solution(String numbers) {
        long answer = 0;
        return answer;
    }
}

해결법

방법 1

class Solution {
    public long solution(String numbers) {
        long answer = 0;
        
        numbers = numbers.replace("one", "1").replace("two", "2").replace("three", "3")
                        .replace("four", "4").replace("five", "5").replace("six", "6").replace("seven", "7")
                        .replace("eight", "8").replace("nine", "9").replace("zero", "0");
        
        answer = Long.parseLong(numbers);
        
        return answer;
    }
}
  • Long.parseLong(numbers)
    • answer 가 long 타입이므로 long 타입으로 변환 필요

방법 2

class Solution {
    public long solution(String numbers) {

    	String[] numbers_arr = {"zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"};

        for (int i = 0; i < numbers_arr.length; i++) {
            numbers = numbers.replaceAll(numbers_arr[i], String.valueOf(i));	// 배열 -> 문자열 변환
        }

        long answer = Long.parseLong(numbers);		// 문자열 -> long 타입 정수로 변환
        
        return answer;
    }
}

방법 3

class Solution {
    public long solution(String numbers) {
        return Long.parseLong(
                numbers.replaceAll("zero", "0")
                        .replaceAll("one", "1")
                        .replaceAll("two", "2")
                        .replaceAll("three", "3")
                        .replaceAll("four", "4")
                        .replaceAll("five", "5")
                        .replaceAll("six", "6")
                        .replaceAll("seven", "7")
                        .replaceAll("eight", "8")
                        .replaceAll("nine", "9")
        );
    }
}

영어가 싫어요 Lv. 0

profile
개발자로 거듭나기!

0개의 댓글