알고리즘/프로그래머스

다항식 더하기

prime9999 2023. 5. 31. 17:02
300x250

//다항식 더하기
    public static String getPolynomial(String polynomial) {
        String answer = "";
        String[] arr  = polynomial.split(" +");
        int num         = 0;
        int xnum = 0;

        //X는 무조건 숫자
        for(String v : arr){
            //숫자가 포함되어 있느냐
            if(v.matches(".*[0-9].*")){
                //숫자와 함께 X가 포함되어 있느냐
                if(v.toUpperCase().contains("X")) {
                    //숫자만 추출해서 담기
                    xnum += Integer.parseInt(v.replaceAll("[^0-9]", ""));
                }else{
                    //상수항
                    num += Integer.parseInt(v);
                }
                //연산자는 패스
            }else if(v.contains("+")){
                continue;
                //나머지는 X값
            }else if(v.equals("x")){
                xnum += 1;
            }
        }
        return (((xnum > 0)?xnum + ((num > 0)?"x + ":"x"):"") + ((num > 0)?num:""));

    }

728x90