#include <bits/stdc++.h>
using namespace std;
int n;
string a;
int arr[1009];
int dp[1009][1009];
int dfs(int pos, int incr) {
  if (pos == n) return 0;
  if (dp[pos][incr] != -1) return dp[pos][incr];
  int res = 0;
  int t = incr;
  dp[pos][incr] = 1 + incr;
  if (a[pos] == 'R')
    t++;
  else if (a[pos] == 'L')
    t = 0;
  res = dfs(pos + 1, t);
  if (a[pos] == 'L') res++;
  if (a[pos] == 'R') res = 0;
  return arr[pos] = dp[pos][incr] = max(res, dp[pos][incr]);
}
int main() {
  cin >> n;
  cin >> a;
  memset(dp, -1, sizeof dp);
  int ans = dfs(0, 0);
  for (int i = 0; i < n; i++) cout << arr[i] << " ";
}
