#include "gift.h"
#include <bits/stdc++.h>
using namespace std;
int construct(int n, int r, vector<int> a, vector<int> b, vector<int> x) {
vector<int> ans(n, -1);
vector<pair<int, int>> p, q;
for (int i = 0; i < r; i++) {
if (x[i] == 1) p.push_back({a[i], b[i]});
else q.push_back({a[i], b[i]});
}
int cur = 0;
sort(p.begin(), p.end());
vector<int> v(n, -1);
for (int i = 0; i < p.size(); i++) {
if (i > 0 && p[i].first > p[i-1].second) cur++;
for (int j = p[i].first; j <= p[i].second; j++) v[j] = cur;
}
for (int i = 0; i < n; i++) {
if (v[i] != -1 && v[i] % 2 == 0) ans[i] = 0;
else if (v[i] != -1) ans[i] = 1;
}
for (int i = 0; i < q.size(); i++) {
int cnt[2] = {0, 0};
for (int j = q[i].first; j <= q[i].second; j++) {
if (ans[j] != -1) cnt[ans[j]]++;
}
if (cnt[0] > 0 && cnt[1] > 0) continue;
if (cnt[0]+cnt[1] == q[i].second-q[i].first+1) return 0;
for (int j = q[i].first; j <= q[i].second; j++) {
if (ans[j] == -1) {
if (cnt[0]) ans[j] = 1;
else ans[j] = 0;
break;
}
}
}
for (int i = 0; i < n; i++) {
if (ans[i] == -1) ans[i] = 0;
}
string s = "";
string temp = "RB";
for (int i = 0; i < n; i++) s += temp[ans[i]];
craft(s);
return 1;
}