Contents
내가 작성한 코드
내가 작성한 코드
class Solution {
public String solution(String polynomial) {
int xCount = 0; // x의 계수를 저장할 변수
int constantSum = 0; // 상수항을 저장할 변수
String[] arr = polynomial.split(" "); // 문자열을 공백 기준으로 나누어 배열에 저장
for (String s : arr) { // 배열을 순회하며 각 항목을 확인
if (s.contains("x")) { // 항이 'x'를 포함하는 경우 (즉, x 항인 경우)
if (s.equals("x")) { // 'x' 단독이면 계수는 1
xCount++;
} else { // '3x' 같은 형태라면 'x'를 제거한 후 정수 변환하여 더함
xCount += Integer.parseInt(s.replace("x", ""));
}
} else if (!s.equals("+")) { // '+' 연산자가 아니라면 (즉, 상수항이라면)
constantSum += Integer.parseInt(s); // 정수 변환하여 상수항 합산
}
}
StringBuilder answer = new StringBuilder(); // 최종 결과를 저장할 StringBuilder 객체 생성
if (xCount > 0) { // x 항이 존재하는 경우
answer.append(xCount == 1 ? "x" : xCount + "x"); // 계수가 1이면 'x', 아니면 'ax' 형태로 추가
}
if (constantSum > 0) { // 상수항이 존재하는 경우
if (answer.length() > 0) { // 앞에 x 항이 있다면 ' + ' 추가
answer.append(" + ");
}
answer.append(constantSum); // 상수항 추가
}
return answer.toString(); // 최종 결과 문자열 반환
}
}
Share article