#include <bits/stdc++.h>
using namespace std;
int n, a[100500], b[100500];
int main() {
  scanf("%d", &n);
  for (int i = 1; i <= n; i++) scanf("%d", &a[i]);
  sort(a + 1, a + n + 1, greater<int>());
  if (a[1] >= a[2] + a[3]) {
    puts("NO");
    return 0;
  }
  b[1] = a[1];
  for (int i = 2, j = 2, k = n; j <= k;) {
    b[j++] = a[i++];
    if (j <= k) b[k--] = a[i++];
  }
  puts("YES");
  for (int i = 1; i <= n; i++) printf("%d ", b[i]);
  puts("");
  return 0;
}
