#include <bits/stdc++.h>
using namespace std;
const long long int infinity = 9e18;
bool possible(long long int x1, long long int x2, long long int y1,
              long long int y2, long long int n, long long int m, string s,
              long long int dx, long long int dy) {
  long long int a = m / n;
  long long int b = m % n;
  x1 += a * dx;
  y1 += a * dy;
  for (int i = 0; i < b; i++) {
    if (s[i] == 'U') y1++;
    if (s[i] == 'D') y1--;
    if (s[i] == 'R') x1++;
    if (s[i] == 'L') x1--;
  }
  if ((abs(y1 - y2) + abs(x1 - x2)) <= m) return 1;
  return 0;
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  long long int x1, x2, y1, y2, n;
  cin >> x1 >> y1 >> x2 >> y2 >> n;
  string s;
  cin >> s;
  long long int dx = 0, dy = 0;
  for (int i = 0; i < n; i++) {
    if (s[i] == 'U') dy++;
    if (s[i] == 'D') dy--;
    if (s[i] == 'R') dx++;
    if (s[i] == 'L') dx--;
  }
  long long int st = 0, end = 1e18;
  while (st < end) {
    long long int mid = (end + st) / 2;
    if (possible(x1, x2, y1, y2, n, mid, s, dx, dy)) {
      end = mid;
    } else {
      st = mid + 1;
    }
  }
  if (st == 1e18)
    cout << -1;
  else
    cout << st;
  return 0;
}
