Problem p03836 (C++)

Buggy submission (status: Runtime Error):
/**   Created by: Marcos Portales
      Codeforces User: marcosportales
      Country: Cuba
      Copyright                    */
#include <bits/stdc++.h>
using namespace std;
/// Pragmas:
#pragma GCC optimize("Ofast", "unroll-loops", "omit-frame-pointer",            \
                     "inline") // Optimization flags
#pragma GCC option("arch=native", "tune=native", "no-zero-upper") // Enable AVX
#pragma GCC target("avx2")                                        // Enable AVX
/// Macros:
#define int long long
#define f first
#define s second
#define db(x) cerr << #x << ": " << (x) << '\n';
#define pb push_back
#define lb lower_bound
#define up upper_bound
#define all(x) x.begin(), x.end()
#define rall(x) x.rbegin(), x.rend()
#define enl '\n'
#define vi vector<int>
#define sz(a) int((a).size())
#define rep(i, x, y) for (int i = x; i < y; i++)
typedef pair<int, int> ii;
typedef long double ld;
typedef unsigned long long ull;
/// Constraints:
const int maxn = 400010;
const int mod = 1000000007;
const ld eps = 1e-9;
const int inf = ((1ll << 31ll) - 1ll);
const int INF = 2000000000000000000ll;
const ld pi = acos(-1);
/// Prime Numbers:
// 2, 173, 179, 181, 197, 311, 331, 737, 1009, 2011, 2027, 3079, 4001, 10037,
// 10079, 20011, 20089; 100003, 100019, 100043, 200003, 200017, 1000003,
// 1000033, 1000037, 1000081; 2000003, 2000029, 2000039, 1000000007, 1000000021,
// 2000000099;
/// Functions:
#define lg2(x) 31 - __builtin_clz(x)
#define lgx(x, b) (log(x) / log(b))
/// Red-Black Tree Template ---------------------------------
// #include <ext/pb_ds/assoc_container.hpp>
// #include <ext/pb_ds/tree_policy.hpp>
// using namespace __gnu_pbds;
// typedef tree < long long ,  null_type ,  less<long long> ,  rb_tree_tag ,
// tree_order_statistics_node_update > ordered_set;
/// Quick Pow------------------------------------------------
int qpow(int b, int e) {
  if (!e)
    return 1;
  if (e & 1)
    return qpow(b, e - 1) * b % mod;
  int pwur = qpow(b, e >> 1);
  return (pwur * pwur) % mod;
}
int modinv(int x) { return qpow(x, mod - 2); }
/// My Code -------------------------------------------------

int32_t main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.setf(ios::fixed);
  cout.precision(0);
  srand(time(NULL));

  // freopen("a.in","r",stdin);
  // freopen("a.in","w",stdout);
  int x, y, a, b;
  cin >> x >> y >> a >> b;
  cout << string(a - x, 'U');
  cout << string(b - y, 'R');
  cout << string(a - x, 'D');
  cout << string(b - y, 'L');
  cout << 'L' << string(a - x + 1, 'U');
  cout << string(b, 'R');
  cout << "DR" << string(b + 1, 'D');
  cout << string(b, 'L') << 'U';

  return 0;
}


Fixed submission:
/**   Created by: Marcos Portales
      Codeforces User: marcosportales
      Country: Cuba
      Copyright                    */
#include <bits/stdc++.h>
using namespace std;
/// Pragmas:
#pragma GCC optimize("Ofast", "unroll-loops", "omit-frame-pointer",            \
                     "inline") // Optimization flags
#pragma GCC option("arch=native", "tune=native", "no-zero-upper") // Enable AVX
#pragma GCC target("avx2")                                        // Enable AVX
/// Macros:
#define int long long
#define f first
#define s second
#define db(x) cerr << #x << ": " << (x) << '\n';
#define pb push_back
#define lb lower_bound
#define up upper_bound
#define all(x) x.begin(), x.end()
#define rall(x) x.rbegin(), x.rend()
#define enl '\n'
#define vi vector<int>
#define sz(a) int((a).size())
#define rep(i, x, y) for (int i = x; i < y; i++)
typedef pair<int, int> ii;
typedef long double ld;
typedef unsigned long long ull;
/// Constraints:
const int maxn = 400010;
const int mod = 1000000007;
const ld eps = 1e-9;
const int inf = ((1ll << 31ll) - 1ll);
const int INF = 2000000000000000000ll;
const ld pi = acos(-1);
/// Prime Numbers:
// 2, 173, 179, 181, 197, 311, 331, 737, 1009, 2011, 2027, 3079, 4001, 10037,
// 10079, 20011, 20089; 100003, 100019, 100043, 200003, 200017, 1000003,
// 1000033, 1000037, 1000081; 2000003, 2000029, 2000039, 1000000007, 1000000021,
// 2000000099;
/// Functions:
#define lg2(x) 31 - __builtin_clz(x)
#define lgx(x, b) (log(x) / log(b))
/// Red-Black Tree Template ---------------------------------
// #include <ext/pb_ds/assoc_container.hpp>
// #include <ext/pb_ds/tree_policy.hpp>
// using namespace __gnu_pbds;
// typedef tree < long long ,  null_type ,  less<long long> ,  rb_tree_tag ,
// tree_order_statistics_node_update > ordered_set;
/// Quick Pow------------------------------------------------
int qpow(int b, int e) {
  if (!e)
    return 1;
  if (e & 1)
    return qpow(b, e - 1) * b % mod;
  int pwur = qpow(b, e >> 1);
  return (pwur * pwur) % mod;
}
int modinv(int x) { return qpow(x, mod - 2); }
/// My Code -------------------------------------------------

int32_t main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0);
  cout.setf(ios::fixed);
  cout.precision(0);
  srand(time(NULL));

  // freopen("a.in","r",stdin);
  // freopen("a.in","w",stdout);
  int x, y, a, b;
  cin >> x >> y >> a >> b;
  int dx = a - x, dy = b - y;
  cout << string(dy, 'U');
  cout << string(dx, 'R');
  cout << string(dy, 'D');
  cout << string(dx, 'L');
  cout << 'L' << string(dy + 1, 'U');
  cout << string(dx + 1, 'R');
  cout << "DR" << string(dy + 1, 'D');
  cout << string(dx + 1, 'L') << 'U';

  return 0;
}