스택 수열
\(1\)부터 \(n\)까지의 정수를 오름차순으로 한 번씩 스택에 넣을 수 있다.
스택의 가장 위에 있는 수를 꺼내는 동작을 이용해 주어진 수열을 만들 수 있는지 판별하라.
만들 수 있다면 스택에 넣는 동작은 +, 꺼내는 동작은 -로 출력한다.
입력
첫째 줄에 정수 \(n\)이 주어진다.
둘째 줄부터 \(n\)개의 줄에 만들어야 하는 수열이 한 줄에 하나씩 주어진다.
수열에는 \(1\)부터 \(n\)까지의 정수가 정확히 한 번씩 등장한다.
\((1 \le n \le 100000)\)
출력
수열을 만들 수 있다면 필요한 +, - 동작을 한 줄에 하나씩 출력한다.
만들 수 없다면 NO를 출력한다.
예제 입력 1
8
4
3
6
8
7
5
2
1
예제 출력 1
+
+
+
+
-
-
+
+
-
+
+
-
-
-
-
-
예제 입력 2
3
3
1
2
예제 출력 2
NO
코멘트