새벽_나그네
12시 지난 새벽
새벽_나그네
전체 방문자
오늘
어제
  • 분류 전체보기
    • TIL
    • DevLog
    • Algorithm
    • ComputerScience
    • etc

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 국비지원
  • portfolio
  • 코린이
  • 개발일지
  • Selenium 4
  • Github
  • Python
  • machine learning
  • 코딩
  • 내일배움단
  • TodayILearned
  • 코딩프로젝트
  • 내일배움카드
  • til
  • 자기주도학습
  • 스파르타코딩클럽
  • AI트랙
  • 프로그래머스
  • docker
  • 내일배움캠프

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
새벽_나그네

12시 지난 새벽

Algorithm

[백준_1541] 잃어버린 괄호

2022. 5. 19. 22:06

문제 보기: https://www.acmicpc.net/problem/1541

 

1541번: 잃어버린 괄호

첫째 줄에 식이 주어진다. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으로 이루어져 있고, 가장 처음과 마지막 문자는 숫자이다. 그리고 연속해서 두 개 이상의 연산자가 나타나지 않고, 5자리보다

www.acmicpc.net

문제

세준이는 양수와 +, -, 그리고 괄호를 가지고 식을 만들었다. 그리고 나서 세준이는 괄호를 모두 지웠다.

그리고 나서 세준이는 괄호를 적절히 쳐서 이 식의 값을 최소로 만들려고 한다.

괄호를 적절히 쳐서 이 식의 값을 최소로 만드는 프로그램을 작성하시오.

 

입력

첫째 줄에 식이 주어진다. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으로 이루어져 있고, 가장 처음과 마지막 문자는 숫자이다. 그리고 연속해서 두 개 이상의 연산자가 나타나지 않고, 5자리보다 많이 연속되는 숫자는 없다. 수는 0으로 시작할 수 있다. 입력으로 주어지는 식의 길이는 50보다 작거나 같다.

출력

첫째 줄에 정답을 출력한다.

 

풀이 과정

문제의 제목에서 괄호를 이야기하고 있어서 괄호에 집중을 하게되는 문제이지만 이것에서 집중해야하는 것은 어느 곳을 기준으로 숫자를 끊어야하는지 입니다.

1. '-' 을 기준으로 하여 문자열을 받습니다.

2. 받은 문자열을 s 라는 변수에 저장하고 이것을 순서대로 모두 합치고 num라는 배열에 순서대로 저장합니다.

3. 마지막에 num 배열의 모든 숫자를 빼줍니다.

 

코드

a = input().split('-')
num = []
for i in a:
    cnt = 0
    s = i.split('+')
    for j in s:
        cnt += int(j)
    num.append(cnt)
n = num[0]
for i in range(1, len(num)):
    n -= num[i]
print(n)
저작자표시 비영리 변경금지 (새창열림)

'Algorithm' 카테고리의 다른 글

[백준_3052] 나머지  (0) 2022.05.23
[백준_9461] 파도반 수  (0) 2022.05.20
[백준_9184] 신나는 함수 실행  (0) 2022.05.18
[백준_11866] 요세푸스 문제 0  (0) 2022.05.17
[백준_1003] 피보나치 함수  (0) 2022.05.15
    'Algorithm' 카테고리의 다른 글
    • [백준_3052] 나머지
    • [백준_9461] 파도반 수
    • [백준_9184] 신나는 함수 실행
    • [백준_11866] 요세푸스 문제 0
    새벽_나그네
    새벽_나그네
    IT, 프로그래밍, 정보, 스마트스토어

    티스토리툴바