#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; using i64 = int64_t; int n; vector a; int main() { cin >> n; a.resize(n); for (int i = 0; i < n; ++i) cin >> a[i]; if (a[0] > a[n - 1]) { cout << "No\n"; return 0; } vector res; for (int l = 1, r = 1; r < n; ) { while (a[r] <= a[0]) ++r; for (int i = r - 1; i >= l; --i) { res.push_back(a[i]); } res.push_back(a[r]); r++; l = r; } assert(res.size() == n - 1); cout << "Yes\n"; for (int x : res) cout << x << ' '; cout << endl; return 0; }