[백준 / BOJ] 19591 독특한 계산기
문제 출처 : www.acmicpc.net/problem/19591 19591번: 독특한 계산기 숫자, '+', '*', '-', '/'로만 이루어진 길이가 106 이하인 수식이 주어진다. 계산 과정 중의 모든 수는 −263 이상 263 미만이며, 0으로 나누는 경우는 없다. 숫자 앞에 불필요한 0이 있을 수 있다. www.acmicpc.net 수식이 주어졌을때, 계산을 하는 문제다. 계산을 할때 규칙이 있는데, 가장 앞, 혹은 가장뒤에있는 것만 계산할수있다. 이때, 곱하기 나누기를 더하기 빼기보다 먼저 계산하고, 수식 우선순위가 같다면 계산결과가 큰것부터 계산한다. 풀이 문제에서 하란대로만 구현하면 풀리는문제다. deq자료구조를 이용했다. 숫자을 저장하는 deq, 연산자를 저장하는 deq을 각각 만들고..
[백준 / BOJ] 3213 피자
문제 출처 : www.acmicpc.net/problem/3213 3213번: 피자 첫째 줄에 친구의 수 N이 주어진다. (1 ≤ N ≤ 10,000) 다음 N개 줄에는 각 친구가 먹을 수 있는 피자의 양이 주어진다. 이 값은 항상 분수이며, 1/4, 1/2, 3/4중 하나이다. www.acmicpc.net 상근이의 친구들은 피자를 먹는데, 무조건 1/4, 3/4, 1/2크기만큼 먹을수있다. 이때, 상근이가 시켜야하는 최소한의 피자양을 구하는문제다. (1/4 3/4 1/2 만큼의 조각을 나눠서 먹는것이 아닌, 한번에 먹어야한다 ) 풀이 예제를 전부 더해보면 2가 나와서 2판만 시키면되는데, 출력은 3이나와서 뭔가했다... 알고보니 (번역본에는 안 나와있는데 본문에는 나와있음) 조각을 나눠서 먹으면 안되고..
[백준 / BOJ] 8901 화학 제품
문제 출처 : www.acmicpc.net/problem/8901 8901번: 화학 제품 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 두 줄로 이루어져 있다. 첫째 줄에는 상근이가 가지고 있는 A, B, C의 양이 주어진다. 둘째 줄에는 AB, BC, CA의 가격이 주어진다. www.acmicpc.net 상근이는 세 종류의 화학물질 A, B, C를 가지고 있다. 화학물질을 AB, BC, CA로 조합해서 세가지 제품을 만들수있는데, A,B,C의 갯수와 AB,BC,CA의 가격이 주어졌을때, 상근이가 얻는 최대이익을 출력하는 문제다. 풀이 완전탐색으로 풀리는문제다. 하지만, 그냥 모든경우를 봐줄경우, 1000 * 500 * 250 * 250 ?? 처럼 나와서 시간초과가 난다. 한가지 제..
[백준 / BOJ] 15658 연산자 끼워넣기 (2)
문제 출처 : www.acmicpc.net/problem/15658 15658번: 연산자 끼워넣기 (2) N개의 수로 이루어진 수열 A1, A2, ..., AN이 주어진다. 또, 수와 수 사이에 끼워넣을 수 있는 연산자가 주어진다. 연산자는 덧셈(+), 뺄셈(-), 곱셈(×), 나눗셈(÷)으로만 이루어져 있다. 연산자의 개수� www.acmicpc.net N개의 수가 주어지고, +, -, *, /연산자의 갯수가 주어진다. 이때, N개의 수와 연산자들로 만들수있는 조합중 최댓값과 최솟값을 찾는문제다. (단, 주어진 수의 순서를 꾸면 안된다.) 풀이 백트래킹을 이용한, 구현문제다. 연산자와 숫자를 전부 사용하지않고도 최댓값, 최솟값이 나올수있다는 조건을 주의하면서 코딩하자. ope[i] = 연산자 사용가능 ..