#include <bits/stdc++.h>
char a[120][120] = {0};
int n;
int find(int x, int y) {
  if (x <= 0 || x >= n - 1 || y <= 0 || y >= n - 1) return 0;
  if (!(a[x + 1][y] == '#')) return 0;
  if (!(a[x - 1][y] == '#')) return 0;
  if (!(a[x][y + 1] == '#')) return 0;
  if (!(a[x][y - 1] == '#')) return 0;
  a[x][y] = '*';
  a[x - 1][y] = '.';
  a[x + 1][y] = '.';
  a[x][y + 1] = '.';
  a[x][y - 1] = '.';
  return 1;
}
int main() {
  int i, j;
  scanf("%d", &n);
  for (i = 0; i < n; i++) scanf("%s", a[i]);
  for (i = 0; i < n; i++)
    for (j = 0; j < n; j++)
      if (a[i][j] == '#') find(i, j);
  for (i = 0; i < n; i++)
    for (j = 0; j < n; j++)
      if (a[i][j] == '#') {
        printf("NO\n");
        return 0;
      }
  printf("YES\n");
  return 0;
}
