Notice
Recent Posts
Recent Comments
Link
«   2024/11   »
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
Tags
more
Archives
Today
Total
관리 메뉴

개발계발

프로그래머스 - 다항식 더하기(120863) 본문

알고리즘

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

Ju_Nik_E 2024. 4. 23. 11:08

문제 설명

 

제한 사항

접근 방식

- polynomial을 "+"기준으로 split

- x와 상수를 분리

- x끼리 더하고 상수끼리 더함

- 형식에 맞게 출력

풀이 코드

def solution(polynomial):
    answer = ""
    divide = polynomial.split(" + ")
    num_x = 0
    num = 0

    for i in divide:
        if 'x' in i: # 변수x가 있으면
            plus = i.split('x')[0] # x를 기준으로 나눈뒤 첫번째 값을 추출(계수)
            if plus == '': # 첫번째 값이 비어있는 경우에는 계수가 1임
                num_x += 1
            else: # 1이 아닌 경우
                num_x += int(plus)
        else: # 변수 x가 없는 경우(상수)
            num += int(i)
        
    if num_x == 0:
        answer = (f"{num}")
    elif num == 0:
        if num_x == 1:
            answer = "x"
        else:
            answer = (f"{num_x}x")
    else:
        if num_x == 1:
            answer = (f"x + {num}")
        else:
            answer = (f"{num_x}x + {num}")
            
    return answer

 

주의사항

- x값이 1일 때, 0일 때, 상수값이 0일 때 상황마다 출력형식이 다 달라진다.