Notice
Recent Posts
Recent Comments
Link
반응형
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- 파이썬 오류
- rest api
- 해시
- 이진탐색
- 멱등
- BOJ
- 파이썬
- 백준
- 딕셔너리
- HTTP
- 스택과 힙
- 강화학습
- 코딩테스트
- 코테
- 딥러닝
- 자바
- bineary search
- 깊이우선탐색
- 비지도학습
- 프로그래머스
- 캐싱
- post
- 머신러닝
- Merge sort
- 코딩
- 지도학습
- 알고리즘
- 오버라이딩
- 너비우선탐색
- 파이썬 알고리즘
Archives
- Today
- Total
chae._.chae
[Algorithm] 백준 #1541 잃어버린 괄호 본문
728x90
반응형
https://www.acmicpc.net/problem/1541
1541번: 잃어버린 괄호
첫째 줄에 식이 주어진다. 식은 ‘0’~‘9’, ‘+’, 그리고 ‘-’만으로 이루어져 있고, 가장 처음과 마지막 문자는 숫자이다. 그리고 연속해서 두 개 이상의 연산자가 나타나지 않고, 5자리보다
www.acmicpc.net
숫자와 +, -로 구성된 식을 입력받아 적절한 위치에 괄호를 삽입해 최솟값을 만드는 문제이다.
🔎풀이 방법
1. 먼저 - 를 기준으로 식을 나눠준다.
입력된 식이 55-50+40+30-20+10+30라면,
-를 기준으로 ['55', '50+40+30', '20+10+30'] 으로 식을 split()해준다.
2. +로 연결된 숫자를 계산해준다.
[55, 120, 60]으로 + 기호를 계산해준다.
3. 각 숫자들 사이에서 빼기 연산을 진행해준다.
- 기호를 기준으로 나뉜 숫자이기에, -로 연결되어 있다. 따라서 각 숫자들 사이에 - 기호를 넣어 계산해준다.
# 1541 잃어버린 괄호
import sys
input = sys.stdin.readline
# cal = input().split('-') # 55-50+40+30-20+10+30
# => 여기서 rstrip()을 해주지 않으면 ['55', '50+40+30', '20+10+30\n'] 이렇게 마지막에 줄바꿈 기호가 들어간다.
cal = input().rstrip().split('-')
# print(cal) # ['55', '50+40+30', '20+10+30'] => - 기호를 기준으로 split 해준 식
array = []
for i in cal:
num = i.split('+')
sum = 0
for j in num:
sum += int(j)
array.append(sum)
# print(array) # [55, 120, 60]
result = array[0]
for i in range(1, len(array)):
result -= array[i]
print(result) # 55-120-60=55-180=125
728x90
'파이썬 알고리즘 > BOJ' 카테고리의 다른 글
[Algorithm] 백준 #2178 미로탐색 (0) | 2023.06.25 |
---|---|
[Algorithm] 백준 #2110 공유기 설치 (0) | 2023.06.25 |
[Algorithm] 백준 #1463 1로 만들기 (0) | 2023.06.18 |
[Algorithm] 백준 #1874 - 스택 수열 (0) | 2023.06.18 |
백준 구현 문제 틀린거 모음 : 구현(1) (0) | 2022.06.28 |