아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

트웬티포

시간 제한1초메모리 제한128 MB

요약
네 장의 카드로 +, -, *, /와 정확한 나눗셈만 써서 네 값을 모두 사용한 식이 만들 수 있는 24 이하의 가장 큰 정수를 각 손마다 구한다.
난이도

보통10점 중 5점

유형
완전 탐색, 재귀, 수학, 구현
정답자
아직 제출이 없습니다

문제

트웬티포(Twenty-four)는 네 명이 즐기는 인기 카드 게임입니다. 각 플레이어는 자기 앞에 카드 더미를 뒤집어 놓고, 매 턴마다 네 명이 각자 더미 맨 위의 카드를 뒤집어 모두에게 보이게 합니다.

목표는 네 장의 카드 값(A는 1, J는 11, Q는 12, K는 13)으로 산술식을 만들어 그 값이 정확히 24가 되게 하는 것입니다. 예를 들어 카드가 A, K, J, Q일 때 가능한 식 하나는 다음과 같습니다.

((A * K) - J) * Q
((1 * 13) - 11) * 12

이런 식을 가장 먼저 외친 플레이어가 그 턴을 이기고 네 장의 카드를 자기 더미 맨 아래에 넣습니다.

올바른 식은 네 장의 카드 값을 모두 사용해야 하며, 덧셈·뺄셈·곱셈·나눗셈으로만 결합할 수 있고 괄호로 연산 순서를 지정할 수 있습니다. 카드를 나란히 붙여 여러 자리 수를 만드는 것은 허용되지 않습니다(예: 카드 2와 4를 붙여 24로 만들 수 없습니다). 나눗셈은 항상 나누어떨어져야 하며, 전체 식의 어떤 부분식에서라도 정수가 아닌 몫이 나오면 안 됩니다.

어떤 경우에는 24를 만드는 식을 찾기까지 오래 걸리기도 하고, 아예 24가 되는 식이 존재하지 않는 패도 있습니다. 네 장의 카드가 주어졌을 때, 올바른 산술식으로 만들 수 있는 값 중 24를 넘지 않는 가장 큰 값을 구하세요.

입력

첫째 줄에 카드 묶음의 개수 1≤N≤51 \le N \le 5 가 주어집니다. 각 묶음은 이어지는 네 줄로 주어지며, 각 줄에는 카드 한 장의 값 1≤C≤131 \le C \le 13 이 하나씩 주어집니다.

출력

각 카드 묶음마다, 네 장의 값을 모두 사용한 올바른 산술식으로 만들 수 있는 값 중 24 이하인 가장 큰 값 nn 을 한 줄에 출력합니다.

예제1

  1. 예제 1

    입력
    3
    3
    3
    3
    3
    1
    1
    1
    1
    12
    5
    13
    1
    
    예상 출력
    24
    4
    21