-
백준(BOJ) 16638번 괄호 추가하기 2알고리즘 풀이/백준(Boj) 2020. 4. 9. 15:26
문제 : https://www.acmicpc.net/problem/16638
16638번: 괄호 추가하기 2
길이가 N인 수식이 있다. 수식은 0보다 크거나 같고, 9보다 작거나 같은 정수와 연산자(+, -, ×)로 이루어져 있다. 곱하기의 연산자 우선순위가 더하기와 빼기보다 높기 때문에, 곱하기를 먼저 계산 해야 한다. 수식을 계산할 때는 왼쪽에서부터 순서대로 계산해야 한다. 예를 들어, 3+8×7-9×2의 결과는 41이다. 수식에 괄호를 추가하면, 괄호 안에 들어있는 식은 먼저 계산해야 한다. 단, 괄호 안에는 연산자가 하나만 들어 있어야 한다. 예를 들어,
www.acmicpc.net
풀이 :
기존 괄호 추가하기 문제는 단순히 해당하는 괄호 연산 (A 연산자 B) 를 ( A 연산자 B + 0 ) 의 형태로 바꾸어서
계산해주었지만 곱셈 우선 계산 시 0 * 다음값이 되어 0이 나오므로 다른 방법이 필요하다.
따라서 여분의 배열을 하나더 만들어서 괄호 부분은 A연산자B만 담게 되고 연산자로 곱하기를 만나게 되면 여분의 배
열에 값과 계산해서 다시 넣어주는 형태로 작성하였다.
코드 ( C++ )
'알고리즘 풀이 > 백준(Boj)' 카테고리의 다른 글
백준(BOJ) 1806번 부분합 (0) 2020.04.15 백준(BOJ) 1022번 소용돌이 예쁘게 출력하기 (0) 2020.04.14 백준(BOJ) 1726번 로봇 (0) 2020.04.08 백준(BOJ) 11559번 Puyo Puyo (0) 2020.04.08 백준(BOJ) 17142번 연구소 3 (0) 2020.03.31