0으로 만들기

아직 제출이 없습니다시간 제한1초메모리 제한1024 MB

문제

$N$개의 정수로 이루어진 수열 $A_1, A_2, ..., A_N$이 주어집니다. 여러분은 수와 수 사이에 연산자를 하나씩 끼워 넣어서 수식을 완성해야 합니다. 단, 수열의 순서는 바꿀 수 없습니다.

연산자는 덧셈(+), 뺄셈(-), 곱셈(×)만 사용할 수 있으며, 연산자의 우선순위는 곱셈이 덧셈과 뺄셈보다 앞섭니다.

또한 여러분은 완성된 수식에 최대 하나의 괄호를 사용할 수 있는데, 여는 괄호 뒤에는 반드시 숫자가 등장해야 하며, 마찬가지로 닫는 괄호 앞에는 반드시 숫자가 등장해야 합니다. 사칙연산의 규칙상, 괄호 안에 들어있는 식을 먼저 계산해야 합니다.

다음은 올바른 수식과 그렇지 않은 수식의 예시입니다.

  • $-1+2\times 6+7+(2-4)\times 9$: 맨 앞의 숫자에 연산자가 사용되었으므로, 올바르지 않은 수식입니다.
  • $2\times 6(+3-5)-2\times 8+1$: 여는 괄호 뒤에 연산자가 등장하였으므로, 올바르지 않은 수식입니다.
  • $3\times 6\quad 2+5-9\times 0+1$: 숫자 사이에 연산자가 사용되지 않았으므로, 올바르지 않은 수식입니다.
  • $2\times (3)-5+4\times 2+1-9\times 3$: 올바른 수식입니다.
  • $2023\times 12-2\times (14-0)$: 올바른 수식입니다.
  • $2023)\times 12-2\times (17-0$: 괄호의 순서가 바뀌었으므로, 올바르지 않은 수식입니다.
  • $(12+34)\times (56\times 78)-90$: 두 쌍 이상의 괄호가 사용되었으므로, 올바르지 않은 수식입니다.

연산자와 괄호를 적절히 추가하여 완성된 수식의 결괏값이 $0$이 되도록 할 수 있다면 첫째 줄에 YES를 출력하고, 둘째 줄에 결괏값이 $0$이 되도록 하는 완성된 수식을 출력해 주세요.

만약 연산자와 괄호를 어떻게 사용해도 수식의 결괏값을 $0$으로 만들 수 없다면 NO를 출력해 주세요.

입력

첫째 줄에 수의 개수 $N$이 주어집니다. $(30,000≤N≤50,000)$

둘째 줄에는 수열 $A_1, A_2, ..., A_N$이 공백으로 구분되어 주어집니다. $(0≤A_i≤10,000)$

출력

연산자와 괄호를 적절히 추가하여 완성된 수식의 결괏값이 $0$이 되도록 할 수 있다면 첫째 줄에 YES를 출력하고, 둘째 줄에 결괏값이 $0$이 되도록 하는 완성된 수식을 출력해 주세요. 단, 곱셈 기호는 *를 사용하여 출력해야 합니다.

만약 연산자와 괄호를 어떻게 사용해도 수식의 결괏값을 $0$으로 만들 수 없다면 NO를 출력해 주세요.