[이것이 코딩 테스트다 with Python] Chapter 11. 그리디 - 곱하기 혹은 더하기

2023. 11. 27. 00:51·코딩테스트/이것이 코딩 테스트다
반응형

< 곱하기 혹은 더하기>

 

💬 문제 설명

각 자리가 숫자(0부터 9)로만 이루어진 문자열 S가 주어졌을 때, 왼쪽부터 오른쪽으로 하나씩 모든 숫자를 확인하며 숫자 사이에 'x' 혹은 '+' 연산자를 넣어 결과적으로 만들어질 수 있는 가장 큰 수를 구하는 프로그램을 작성하세요

....

 

  입력   출력
  02984   576
  567   210

💬 입력 조건

  • 첫째 줄에 여러 개의 숫자로 구성된 하나의 문자열 S가 주어집니다.  ( 1 ≤ S의 길이 ≤ 20)

💬 출력 조건

  • 첫째 줄에 만들어질 수 있는 가장 큰 수를 출력합니다.

✍ 문제요약

숫자로 이루어진 문자열 S가 주어지는데, 왼쪽 숫자 부터 차례대로 하나씩 연산을 진행한다. 여기서 유의할 점은 일반적인 사칙연산으로 진행되지 않고, 왼쪽부터 순서대로 진행한다. 'x' 와 '+' 만 이용해서 최대값을 구헤야한다.


✅  문제 풀이

  • 'x'와 '+' 만을 사용할 수 있는 경우 특정 상황을 제외하고는 'x' 값을 활용해야 큰 값을 얻을 수 있다.
  • 연산이 이루어지는 두 수 중 하나라도 '1'인 경우 'x' 는 값이 커지지 않는데, '+'는 값이 커진다.
  • 연산이 이루어지는 두 수 중 하나라도 '0'인 경우 'x' 는 값이 0이 되는데, '+'는 값이 유지된다.
  • 연산이 이루어지는 두 수 모두 0,1 이 아니면 곱하기를 진행해야 큰 값이 된다.
numbers = input()
result = int(numbers[0])          # 첫 숫자를 result에 넣는다

for i in range(1,len(numbers)):
    num = int(numbers[i])         # 숫자로 바꿔서 num에 대립
    if num <= 1 or result <=1: 	  # num이 1이하 or result 1이하이면 
        result += num             # num을 더한다 
    else:                         # 그렇지 않으면
        result *= num             # num을 곱한다.
print(result)

 

반응형

'코딩테스트 > 이것이 코딩 테스트다' 카테고리의 다른 글

[이것이 코딩 테스트다 with Python] Chapter 11. 그리디 - 무지의 먹방 라이브  (2) 2023.12.02
[이것이 코딩 테스트다 with Python] Chapter 11. 그리디 - 볼링공 고르기  (0) 2023.12.01
[이것이 코딩 테스트다 with Python] Chapter 11. 그리디 - 만들 수 없는 금액  (0) 2023.12.01
[이것이 코딩 테스트다 with Python] Chapter 11. 그리디 - 문자열 뒤집기  (0) 2023.11.27
[이것이 코딩 테스트다 with Python] Chapter 11. 그리디 - 모험가 길드  (2) 2023.11.25
'코딩테스트/이것이 코딩 테스트다' 카테고리의 다른 글
  • [이것이 코딩 테스트다 with Python] Chapter 11. 그리디 - 볼링공 고르기
  • [이것이 코딩 테스트다 with Python] Chapter 11. 그리디 - 만들 수 없는 금액
  • [이것이 코딩 테스트다 with Python] Chapter 11. 그리디 - 문자열 뒤집기
  • [이것이 코딩 테스트다 with Python] Chapter 11. 그리디 - 모험가 길드
hyo_nu
hyo_nu
Annoying Orange Developer
  • hyo_nu
    AOD
    hyo_nu
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 코딩테스트
        • 이것이 코딩 테스트다
        • 알고리즘
      • Style Sheet
        • CSS
  • 블로그 메뉴

    • 홈
    • 방명록
  • 링크

    • Github
    • Velog
  • 공지사항

  • 인기 글

  • 태그

    python
    이진탐색
    알고리즘
    Algorithm
    구현
    브루트포스
    코딩
    dfs
    dp
    그리디
    이것이 취업을 위한 코딩테스트다
    그리기
    취업
    BFS
    코딩테스트다
    정렬
    코딩테스트
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
hyo_nu
[이것이 코딩 테스트다 with Python] Chapter 11. 그리디 - 곱하기 혹은 더하기
상단으로

티스토리툴바