#include <bits/stdc++.h>
using namespace std;
void fix(vector<int>& arr, vector<char>& res, int li, int ri) {
  int lcnt = 1;
  for (int i = li + 1; i <= ri && arr[i] > arr[i - 1]; i++) lcnt++;
  int rcnt = 1;
  for (int i = ri - 1; i >= li && arr[i] > arr[i + 1]; i--) rcnt++;
  if (lcnt > rcnt)
    res.insert(res.end(), lcnt, 'L');
  else
    res.insert(res.end(), rcnt, 'R');
}
int main() {
  ios_base::sync_with_stdio(0);
  int n;
  cin >> n;
  vector<int> arr(n);
  for (int i = 0; i < n; i++) cin >> arr[i];
  int cur = 0;
  vector<char> res;
  int li = 0, ri = n - 1;
  while (li <= ri) {
    if (arr[li] == arr[ri]) {
      if (arr[li] > cur) fix(arr, res, li, ri);
      li = ri + 1;
    } else if (arr[li] < arr[ri]) {
      if (arr[li] > cur) {
        res.push_back('L');
        cur = arr[li++];
      } else {
        if (arr[ri] > cur) {
          res.push_back('R');
          cur = arr[ri--];
        } else
          li = ri + 1;
      }
    } else {
      if (arr[ri] > cur) {
        res.push_back('R');
        cur = arr[ri--];
      } else {
        if (arr[li] > cur) {
          res.push_back('L');
          cur = arr[li++];
        } else
          li = ri + 1;
      }
    }
  }
  cout << res.size() << endl;
  for (auto a : res) cout << a;
  return 0;
}
