다음 퀴즈를 풀어보자.
단순히 +
, -
, ×
, ÷
기호를 사용하는 것만으로는 문제를 해결할 수 없다.
이 문제의 정답은 다음과 같다.
우리는 이렇게 네모 안에 +
, -
, ×
, ÷
, .
개의 기호 중 서로 다른 개의 기호가 들어갈 때,
, , , 을 다른 숫자로 바꾼 문제의 정답은 무엇인지 궁금해졌다.
이 문제를 해결하는 프로그램을 작성하여라.
이 문제에서 식을 계산하는 방식은, 일반적으로 수식을 계산하는 방식과 동일하다. 이에 대해서는 아래의 참고 사항을 참고하여라.
첫 줄에는 테스트 케이스의 수를 의미하는 정수 가 주어진다.
다음 개의 줄의 각 줄에는 네 개의 숫자 , , , 가 공백으로 구분되어 주어진다.
여기서, 숫자란 수를 나타내는 글자를 의미한다. 즉, 숫자는 , , , , , 를 의미한다.
이는 다음과 같은 문제를 해결한다는 것을 의미한다.
정답이 유일한 경우만 입력으로 주어진다.
네모 안에 서로 다른 개의 기호를 끼워 넣어서 완성한 등식을
테스트 케이스마다 한 줄에 하나씩 출력하여라.
단 ×
는 *
으로, ÷
는 /
으로 표시하며, 공백은 출력하지 않는다.
4 1 2 1 1 1 2 2 2 1 2 2 4 5 1 4 7
12-1=1 1+2/2=2 12+2=4 5*1.4=7
3 3 9 8 2 1 4 3 2 9 5 1 5
3-9+8=2 1+4-3=2 9-5+1=5
입력 케이스들은 다음과 같은 종류로 구별되며, 한 종류의 케이스를 다 맞추어야 그 종류에 배정된 점수를 받을 수 있다.
종류 1: 33점
+
, -
기호만 이용하여 문제를 해결할 수 있다.
종류 2: 27점
+
, -
, ×
기호만 이용하여 문제를 해결할 수 있다.
종류 3: 14점
+
, -
, ×
, ÷
기호만 이용하여 문제를 해결할 수 있다.
종류 4: 26점
추가적인 제한 조건이 없음.
네모 안에 서로 다른 기호를 끼워 넣은 후에 식을 계산하는 방법은 다음과 같다.
네모 안에 .
을 사용한 경우에는, 양옆에 있는 두 숫자를 두 숫자 사이에 소수점을 끼워 넣은 새로운 수로 생각한다. 그 이후에, 다른 하나의 기호를 사용하여 계산을 한다.
예) 5×
1.
4 같은 경우에는 다음과 같은 방식으로 계산한다.
.
이 사용되었으므로, 1.
4를 두 숫자 1과 4 사이에 소수점을 끼워 넣은 1.4로 생각한다.×
를 계산한다. 5×
1.4는 7이다.서로 다른 두 개의 사칙연산 기호를 사용한 경우에는, ×
와 ÷
를 +
와 -
보다 먼저 계산한다(×
, ÷
의 우선순위가 +
, -
보다 높다).
예) 1+
2×
3 같은 경우에는 다음과 같은 방식으로 계산한다.
×
의 우선순위가 더 높기 때문에, 2×
3을 먼저 계산한다. 2×
3은 6이다.+
를 계산한다. 1+
6은 7이다.두 사칙연산 기호의 우선순위가 같을 경우에는, 즉 두 기호가 ×
, ÷
인 경우와 +
, -
인 경우에는 앞에서부터 계산한다.
예) 4÷
2×
3 같은 경우에는 다음과 같은 방식으로 계산한다.
÷
와 ×
의 우선순위가 같기 때문에, 앞에서부터 계산한다. 4÷
2 는 2이다.×
를 계산한다. 2×
3은 6이다.