알고리즘/프로그래머스
[프로그래머스] 숨어있는 숫자의 덧셈 (1)
CooNiHong
2022. 12. 2. 15:56
문제 링크
https://school.programmers.co.kr/learn/courses/30/lessons/120851?language=java
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
문제 설명
문자열 my_string이 매개변수로 주어집니다. my_string안의 모든 자연수들의 합을 return하도록 solution 함수를 완성해주세요.
제한사항
- 1 ≤ my_string의 길이 ≤ 1,000
- my_string은 소문자, 대문자 그리고 한자리 자연수로만 구성되어있습니다.
입출력 예
my_string | result |
"aAb1B2cC34oOp" | 10 |
"1a2b3c4d123" | 16 |
입출력 예 설명
입출력 예 #1
- "aAb1B2cC34oOp"안의 한자리 자연수는 1, 2, 3, 4 입니다. 따라서 1 + 2 + 3 + 4 = 10 을 return합니다.
입출력 예 #2
- "1a2b3c4d123Z"안의 한자리 자연수는 1, 2, 3, 4, 1, 2, 3 입니다. 따라서 1 + 2 + 3 + 4 + 1 + 2 + 3 = 16 을 return합니다.
유의사항
- 연속된 숫자도 각각 한 자리 숫자로 취급합니다.
나의 풀이
Java
class Solution {
public int solution(String my_string) {
int answer = 0;
String str = my_string.replaceAll("[^0-9]","");
String[] strArr = new String[str.length()];
strArr = str.split("");
for(int i = 0; i < strArr.length; i++) {
answer += Integer.parseInt(strArr[i]);
}
return answer;
}
}
JavaScript
function solution(my_string) {
let answer = 0;
let str = my_string.split("");
for(let i of str) {
if(Number(i)) {
answer += Number(i);
}
}
return answer;
}
728x90