#include <bits/stdc++.h>
using namespace std;
template <class P, class Q>
void smin(P &a, Q b) {
  if (b < a) a = b;
}
template <class P, class Q>
void smax(P &a, Q b) {
  if (b > a) a = b;
}
template <class P, class Q>
bool in(const P &a, const Q &b) {
  return a.find(b) != a.end();
}
const int MAXN = 2222;
int n, m, k;
string s[MAXN];
int r[MAXN][MAXN], l[MAXN][MAXN], u[MAXN][MAXN], t[MAXN];
int main() {
  cin >> n >> m >> k;
  for (int i = (0); i < int(n); ++i) cin >> s[i];
  for (int i = (0); i < int(n); ++i)
    for (int j = (0); j < int(m); ++j) {
      if (s[i][j] == 'R') r[i][j]++;
      if (s[i][j] == 'L') l[i][j]++;
      if (s[i][j] == 'U') u[i][j]++;
    }
  for (int i = (0); i < int(n); ++i)
    for (int j = (0); j < int(m); ++j) {
      if (j - i >= 0) t[j] += r[i][j - i];
      if (j + i < m) t[j] += l[i][j + i];
      if (i + i < n) t[j] += u[i + i][j];
    }
  for (int i = (0); i < int(m); ++i) cout << t[i] << " ";
  cout << endl;
  return 0;
}
