19세기의 어느 공작은 귀중품을 보관할 방을 만들고 금고의 비밀번호를 특이한 방법으로 정했다. 도둑맞는 것을 워낙 두려워한 나머지 비밀번호를 아무에게도 말하지 않았고, 비밀번호를 얻는 방법만 종이에 적어 두었다가 세상을 떠날 때 상속자에게 넘기게 했다. 종이에는 이렇게 적혀 있었다.
?를 +, -, * 중 하나로 바꾼다. 가능한 모든 방법으로 바꿔 여러 개의 식을 만든다.반지에는 수 k개와 기호 k개가 n1, s1, n2, s2, ..., nk, sk 순서로 원을 이루며 새겨져 있다. 루비와 가장 가까운 수가 n1이다. r번째 수열은 nr에서 시작해 시계 방향으로 원소 2k−1개를 읽은 것이고, 수 k개와 그 사이의 기호 k−1개로 이루어진다. 마지막 기호는 빠진다.
기호를 고르는 방법과 계산 순서는 수열마다 따로 정한다. ?마다 다른 기호를 골라도 된다. 연산자의 자리는 그대로이고 계산하는 순서만 달라진다. 예를 들어 1 - 5 + 0 * -2 - -3을 ((((1 - 5) + 0) * -2) - -3) 순서로 계산하면 11이고, (1 - (5 + (0 * (-2 - -3)))) 순서로 계산하면 -4다.
어떤 수열의 최솟값이 -4이고 최댓값이 11이면 그 수열의 코드는 411이다. 값이 음수여도 부호는 버리고 숫자만 적기 때문이다.
반지에 새겨진 수와 기호가 주어진다. 금고의 비밀번호를 구하라.
첫째 줄에 수와 기호로 이루어진 쌍의 개수 k가 주어진다.
둘째 줄에 원소 2k개 n1, s1, n2, s2, ..., nk, sk가 공백 한 칸으로 구분되어 주어진다. ni는 수이고, si는 +, -, *, ? 중 하나다.
첫째 줄에 금고의 비밀번호를 출력한다.