본문 바로가기

프로그래머스/lv0

숨어있는 숫자의 덧셈 (2)

/* 숨어있는 숫자의 덧셈 (2)
 * 문자열 my_string이 매개변수로 주어집니다.
 * my_string은 소문자, 대문자, 자연수로만 구성되어있습니다.
 * my_string안의 자연수들의 합을 return
 *
 * 1 ≤ my_string의 길이 ≤ 1,000
 * 1 ≤ my_string 안의 자연수 ≤ 1000
 * 연속된 수는 하나의 숫자로 간주합니다.
 * 000123과 같이 0이 선행하는 경우는 없습니다.
 * 문자열에 자연수가 없는 경우 0을 return 해주세요.
 *
 * my_string        result
 * "aAb1B2cC34oOp"  37      1 + 2 + 34
 * "1a2b3c4d123Z"   133     1 + 2 + 3 + 4 + 123
 */
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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
import java.util.regex.*;
 
public class Programmer_0_67 {
    static String a1 = "aAb1B2cC34oOp";
    static String a2 = "1a2b3c4d123Z";
 
    public int solution(String my_string) {
        int answer = 0;
 
        System.out.println(my_string.replaceAll("[a-zA-Z]""-"));
        String[] ar = my_string.replaceAll("[a-zA-Z]"" ").split(" ");
        for(int i = 0; i < ar.length; i++){
            if(ar[i].equals("")){
                continue;
            } 
            else answer += Integer.parseInt(ar[i]);
        }
 
 
        /*  시간초과
        String pattern = "^[0-9]*$";
        String[] list = my_string.split("");
        for(int i = 0; i < list.length; i ++) {
            String val = "";
            while(Pattern.matches(pattern, list[i])){
                val += list[i];
                i++;
            }
            // if(val != "") answer += Integer.parseInt(val);
        }
         */
        return answer;
    }
    public static void main(String args[]){
        Programmer_0_67 t = new Programmer_0_67();
 
        System.out.println("---------------------------------------");
        System.out.println("result = " + t.solution(a1));
        System.out.println("---------------------------------------");
        // System.out.println("result2 = " + t.solution(a2));
        // System.out.println("---------------------------------------");
    }
}
cs

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

순서쌍의 개수  (1) 2022.12.05
숨어있는 숫자의 덧셈 (1)  (0) 2022.12.05
모음 제거  (0) 2022.12.05
개미 군단  (0) 2022.12.05
가위 바위 보  (0) 2022.12.02