#include <bits/stdc++.h>
using namespace std;
int main() {
  string s;
  cin >> s;
  if (s.length() % 2 != 0) {
    cout << "-1";
    return 0;
  }
  int u = 0;
  int d = 0;
  int l = 0;
  int r = 0;
  for (int i = 0; i < s.length(); i++) {
    if (s[i] == 'R')
      r++;
    else if (s[i] == 'L')
      l++;
    else if (s[i] == 'U')
      u++;
    else
      d++;
  }
  int turns = 0;
  while (true) {
    if (l == r) break;
    if (l > r) {
      if ((l - r == l && l % 2 == 0) || (l - r) % 2 == 0) {
        l--;
        r++;
      } else {
        if (u > d) {
          u--;
          r++;
        } else {
          d--;
          r++;
        }
      }
    } else if (l < r) {
      if ((r - l == r && r % 2 == 0) || (r - l) % 2 == 0) {
        r--;
        l++;
      } else {
        if (u > d) {
          u--;
          l++;
        } else {
          d--;
          l++;
        }
      }
    }
    turns++;
  }
  while (true) {
    if (u == d) break;
    if (u > d) {
      if ((u - d == u && u % 2 == 0) || (u - d) % 2 == 0) {
        u--;
        d++;
      } else {
        if (l > r) {
          l--;
          d++;
        } else {
          r--;
          d++;
        }
      }
    }
    if (u < d) {
      if ((d - u == d && d % 2 == 0) || (d - u) % 2 == 0) {
        d--;
        u++;
      } else {
        if (l > r) {
          l--;
          u++;
        } else {
          r--;
          u++;
        }
      }
    }
    turns++;
  }
  if (l == r && d == u)
    cout << turns;
  else
    cout << "-1";
  return 0;
}
