본문 바로가기

PS/백준

[BOJ] 백준 14888 연산자 끼워넣기 (Swift)

반응형

문제

https://www.acmicpc.net/problem/14888

 

14888번: 연산자 끼워넣기

첫째 줄에 수의 개수 N(2 ≤ N ≤ 11)가 주어진다. 둘째 줄에는 A1, A2, ..., AN이 주어진다. (1 ≤ Ai ≤ 100) 셋째 줄에는 합이 N-1인 4개의 정수가 주어지는데, 차례대로 덧셈(+)의 개수, 뺄셈(-)의 개수, 

www.acmicpc.net

풀이

백트래킹 알고리즘을 사용해서 풀 수 있는 문제입니다.
수 사이에 연산자를 하나씩 다 넣어보고, 최대값과 최소값을 구할 수 있습니다.

연산자의 갯수를 Int 자료형의 Array로 입력을 주기 때문에,
Array의 Index를 사용해 어떤 연산자인지 판별하였습니다.

코드를 직접 보시면 쉽게 이해가 될 것입니다.

소스코드

후기

생각보다는 어려웠던 문제였습니다.
백트래킹 알고리즘은 금방 떠올렸는데, 구현하는데 시간이 조금 걸렸던 문제였습니다.

반응형