유연한 구간
시간 제한1초메모리 제한512 MB
각 n(최대 10000)에 대해, 연속한 n개의 양의 정수에서 각 원소를 +1 또는 -1만큼 바꿔도 곱이 그대로 유지되도록 하는 구간이 존재하는지 판정하고, 존재하면 시작값과 부호를 출력한다.
문제
위대한 수학자 블라디미르 게르마노비치(Vladimir Germanovich)는 새로운 패턴을 찾던 중 양의 정수로 이루어진 일부 구간에서 흥미로운 성질을 발견했다.
블라디미르는 양의 정수 구간 을(를) 유연하다고 부른다. 이 구간의 모든 수를 각각 정확히 1만큼 바꾸어도 구간에 있는 수들의 곱이 변하지 않을 때 그렇다. 즉, 다음 성질을 만족하는 수열 이 존재한다.
이제 블라디미르 게르마노비치는 임의의 길이를 가진 유연한 구간을 만들 수 있는지 알고 싶어 한다. 양의 정수 이 주어질 때, 개의 연속한 양의 정수로 이루어진 유연한 구간을 하나 찾거나, 그러한 구간이 없음을 밝혀라.
입력
첫째 줄에 정수 이 주어진다. () 은 필요한 구간의 길이이다.
출력
개의 양의 정수로 이루어진 유연한 구간이 존재하면 첫째 줄에 "YES"를, 그렇지 않으면 "NO"를 출력한다.
그러한 구간이 존재하면 둘째 줄과 셋째 줄에 이 구간의 정보를 출력한다.
둘째 줄에는 구간의 첫 번째 원소 을 출력한다. () 길이 인 유연한 구간이 존재하면 인 길이 의 유연한 구간 이 항상 존재함이 보장된다.
셋째 줄에는 공백 없이 길이 인 문자열을 출력한다. 이 문자열은 "+"와 "-"로만 이루어져야 하며, 번째 문자가 "-"이면 이고, "+"이면 이다.
힌트
두 번째 예시에서 , , 이다. 답은 다음과 같다. , , , . 부터 까지의 정수들의 곱은 이다. 들의 곱은 이다. 따라서 구간 는 유연하다.