#include #include #include #include #include #include #include using namespace std; using ll = long long; int main() { int n; cin >> n; vector a(n); for(int i = 0; i < n; i++) cin >> a[i]; if(a[0] > a[n - 1]) { cout << "No" << endl; return 0; } cout << "Yes" << endl; stack st; vector ans; st.push(a[0]); for(int i = 1; i < n - 1; i++) { if(a[i] > st.top()) ans.push_back(a[i]); else st.push(a[i]); } while(!st.empty()) { ans.push_back(st.top()); st.pop(); } for(int i = 0; i < (int)ans.size(); i++) { if(i) cout << " "; cout << ans[i]; } cout << endl; return 0; }