Задача №114825. Гибкие отрезки

Великий математик Владимир Германович, изучая натуральные числа в поисках очередных закономерностей, наткнулся на следующее свойство отрезка натуральных чисел.

Владимир Германович называет отрезок целых положительных чисел \(l, l + 1, \ldots, r\) гибким , если каждое число на этом отрезке можно изменить ровно на один таким образом, что произведение чисел отрезка не поменяется. Иными словами, существует такая последовательность \(a_l, a_{l+1}, \ldots, a_r\), что:

  • \(a_k = k \pm 1\)
  • \(l \cdot (l+1)\cdot \ldots \cdot r = a_l \cdot a_{l+1} \cdot \ldots \cdot a_r\)

Теперь Владимиру Германовичу интересно, любой ли длины он может построить гибкий отрезок. По заданному числу \(n\) найдите гибкий отрезок, состоящий из \(n\) последовательных целых положительных чисел, или сообщите, что такого нет.

Входные данные

В единственной строке задано число \(n\) (\(1 \le n \le 10\,000\)) — длина требуемого отрезка.

Выходные данные

В первой строке выведите « YES » (без кавычек), если существует гибкий отрезок, состоящий из \(n\) натуральных чисел, иначе выведите « NO » (без кавычек).

Если такой отрезок существует, то во второй и третьей строках должна содержаться информация об этом отрезке.

Во второй строке должно содержаться единственное число \(l\) (\(1 \le l \le 1\,000\,000\)) — первый элемент отрезка. Гарантируется, что если существует гибкий отрезок длины \(n\), то существует гибкий отрезок \([l; r]\) длины \(n\) такой, что \(1 \le l \le 1\,000\,000\).

В третьей строке должна содержаться строка длины \(n\) без пробелов, состоящая из символов « + » и « - », \((k-l+1)\)-й символ строки должен быть равен « - », если \(a_k = k - 1\), либо « + », если \(a_k = k + 1\).

Примечание

Во втором примере \(n = 4\), \(l = 2\), \(r = l + n - 1 = 5\). В ответе \(a_2 = 2 - 1 = 1\), \(a_3 = 3 + 1 = 4\), \(a_4 = 4 + 1 = 5\), \(a_5 = 5 + 1 = 6\). Произведение чисел от \(l\) до \(r\) равно \(2 \cdot 3 \cdot 4 \cdot 5 = 120\), а произведение чисел \(a_k\) равно \(a_2 \cdot a_3 \cdot a_4 \cdot a_5 = 1 \cdot 4 \cdot 5 \cdot 6 = 120\). Таким образом, отрезок \([2; 5]\) является гибким.

Примеры
Входные данные
1
Выходные данные
NO
Входные данные
4
Выходные данные
YES
2
-+++
Сдать: для сдачи задач необходимо войти в систему