자료구조 및 알고리즘/알고리즘

[알고리즘] 이것이 취업을 위한 코딩 테스트다 with 파이썬 - 곱하기 혹은 더하기

benjykim 2021. 1. 25. 22:30
반응형

이것이 취업을 위한 코딩 테스트다 with 파이썬 - 곱하기 혹은 더하기

  • 내 풀이

    from collections import deque
    
    s = input()
    s = list(map(int,s))
    q = deque(s)
    result = 0
    
    while True:
        if len(q) <= 1:
            break
    
        first = q.popleft()
        second = q.popleft()
    
        if first * second > first + second:
            q.appendleft(first*second)
        else:
            q.appendleft(first+second)
    
    print(q.pop())
  • 책 풀이

    data = input()
    
    result = int(data[0])
    
    for i in range(1, len(data)):
        num = int(data[i])
        if num <= 1 or result <= 1:
            result += num
        else:
            result *= num
    
            print(result)

    두 수 중에서 하나로 '0' 혹은 '1'인 경우, 곱하기보다는 더하기를 수행하는 것이 효율적이다.

반응형