[프로그래머스 LV.0] (Javascript) 다항식 더하기

Hannah Lee·2023년 1월 18일
0

프로그래머스 LV.0

목록 보기
9/10

😎 링크

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

😎 고려할 사항

  • x가 붙은 항의 계수를 따로 더하고, 상수 항도 따로 더하면 됨
  • 단, 아래의 경우를 잘 고려해서 출력해야 함
  1. 1x 가 아니라 x
  2. 상수항이 0이면 출력 안 함
  3. x항, 상수항 둘 중 하나라도 없으면 +연산자 출력 안 함
  4. x항, 상수항 둘 다 없으면 빈칸 출력이 아니라 0

😎 소스코드

function solution(polynomial) {
  var answer = "";

  let xTerm = 0;  // x항 계수
  let numTerm = 0;  // 상수항
  let terms = polynomial.split(" + ");

  terms.map((t) => {
    if (t.includes("x")) {   // 항에 x가 붙어있으면
      if (t.length === 1) {
        xTerm += 1;
      } else {
        xTerm += Number(t.substring(0, t.length - 1));
      }
    } else {   // 상수항이면
      numTerm += Number(t);
    }
  });

  // 출력 조건들
  if (xTerm !== 0) {
    if (xTerm === 1) {
      answer += "x";
    } else {
      answer += xTerm + "x";
    }
  }

  if (xTerm !== 0 && numTerm !== 0) {
    answer += " + ";
  }

  if (numTerm !== 0) {
    answer += numTerm + "";
  }

  if (xTerm === 0 && numTerm === 0) {
    answer = "0";
  }

  return answer;
}

😎 문법 정리

X

profile
프론트 어쩌고

0개의 댓글