728x90
문제 설명
영어가 싫은 머쓱이는 영어로 표기되어있는 숫자를 수로 바꾸려고 합니다. 문자열 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
- "onetwothreefourfivesixseveneightnine"를 숫자로 바꾼 123456789를 return합니다.
입출력 예 #1
- "onefourzerosixseven"를 숫자로 바꾼 14067를 return합니다.
1
2
3
4
5
6
7
8
9
10
11
12 |
class Solution {
public long solution(String numbers) {
long answer = 0;
String ar[] = {"zero", "one", "two", "three", "four", "five",
"six", "seven", "eight", "nine"}; for(int i=0;i<ar.length;i++) {
numbers = numbers.replace(ar[i], i+"");
}
answer = Long.parseLong(numbers);
return answer;
}
}
|
cs |
숫자들의 영단어를 배열에 넣어 놓고 배열의 값에 들어있는 단어를 숫자로 바꿔준 다음 형변환 하였다. |
1
2
3
4
5
6
7
8
9
10
11
|
class Solution {
public long solution(String numbers) {
long answer = 0;
String ar[] = "zero,one,two,three,four,five,six,seven,eight,nine".split(",");
for(int i=0;i<ar.length;i++) {
numbers = numbers.replace(ar[i], i+"");
}
answer = Long.parseLong(numbers);
return answer;
}
}
|
cs |
배열을 split()을 이용하여 만들었다. |
728x90
'프로그래머스 코딩(자바) > Level 0' 카테고리의 다른 글
Programmers Level 0 - 7의 개수 (0) | 2023.03.06 |
---|---|
Programmers Level 0 - 컨트롤 제트 (0) | 2023.03.06 |
Programmers Level 0 - 소인수분해 (0) | 2023.03.06 |
Programmers Level 0 - 공 던지기 (0) | 2023.03.06 |
Programmers Level 0 - 이진수 더하기 (0) | 2023.03.06 |