코테/프로그래머스

[프로그래머스/Lv. 0] 다항식 더하기

imname1am 2023. 2. 13. 11:23
반응형
import java.util.*;

class Solution {
    public String solution(String polynomial) {
        String answer = "";
        
        String[] pol = polynomial.split(" +");
        int linear = 0 ;
        int constant = 0;
        
        for(String s : pol) {
            if(s.equals("x")) {
                linear += 1;
            } else if(s.contains("x")) {
                linear += Integer.parseInt(s.substring(0, s.length() -1));
            } else if(!s.equals("+")) {
                constant += Integer.parseInt(s);
            }
        }
        
        // 일차항만 존재
        if(linear != 0 && constant == 0) {
            if(linear == 1) {
                answer += "x";
            } else {
                answer += linear + "x";
            }
        }
        
        // 둘다 존재
        if(linear != 0 && constant != 0) {
            if(linear == 1) {
                answer += "x" + " + " + constant;
            } else {
                answer += linear + "x" + " + " + constant;
            }
        }
        
        // 상수항만 존재
        if(linear == 0 && constant != 0) {
            answer += constant;
        }

        return answer;
    }
}

내가 놓친 점은 이제 if문 작성할 때도

x항만 존재하는 경우, 상수항만 존재하는 경우, 둘 다 존재하는 경우

이렇게 경우를 나눠줘서 생각해야했던..

 


(참고)

 

[ 자바 코딩 ] java substring 으로 문자열 자르기

안녕하세요. 제임스 입니다. Java 사용중 문자열을 원하는 위치에서 잘라야 하는 경우가 있습니다. 이때 사용하는 하는 java 함수가 바로 substring 입니다. 이번에는 이 substring 에 대해 자세히 알아

jamesdreaming.tistory.com

 

 

프로그래머스 다항식 더하기

한 개 이상의 항의 합으로 이루어진 식을 다항식이라고 합니다. 다항식을 계산할 때는 동류항끼리 계산해 정리합니다. 덧셈으로 이루어진 다항식 polynomial이 매개변수로 주어질 때, 동류항끼리

velog.io

 

[프로그래머스/Java] Lv.0 다항식 더하기

문제 풀이 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 class Solution { public String solution(String polynomial) { String answer=""; String[] split=polynomial.split("\\s\\+\\s"); //매개변수로 들어온 다항

mycodingreview.tistory.com

 

반응형