Submission #1046140

# Submission time Handle Problem Language Result Execution time Memory
1046140 2024-08-06T10:30:20 Z c2zi6 Sprinklers (CEOI24_sprinklers) C++14
9 / 100
31 ms 3164 KB
#define _USE_MATH_DEFINES
#include <bits/stdc++.h>
#define ff first
#define ss second
#define pb push_back
#define all(a) (a).begin(), (a).end()
#define replr(i, a, b) for (int i = int(a); i <= int(b); ++i)
#define reprl(i, a, b) for (int i = int(a); i >= int(b); --i)
#define rep(i, n) for (int i = 0; i < int(n); ++i)
#define mkp(a, b) make_pair(a, b)
using namespace std;
typedef long long ll;
typedef long double ld;
typedef pair<int, int> PII;
typedef vector<int> VI;
typedef vector<PII> VPI;
typedef vector<VI> VVI;
typedef vector<VVI> VVVI;
typedef vector<VPI> VVPI;
typedef pair<ll, ll> PLL;
typedef vector<ll> VL;
typedef vector<PLL> VPL;
typedef vector<VL> VVL;
typedef vector<VVL> VVVL;
typedef vector<VPL> VVPL;
template<class T> T setmax(T& a, T b) {if (a < b) return a = b; return a;}
template<class T> T setmin(T& a, T b) {if (a < b) return a; return a = b;}
#include <ext/pb_ds/assoc_container.hpp>
using namespace __gnu_pbds;
template<class T>
using indset = tree<T, null_type, less<T>, rb_tree_tag, tree_order_statistics_node_update>;
typedef vector<char> VC;
typedef vector<VC> VVC;
typedef vector<bool> VB;
typedef vector<VB> VVB;
 
void solve() {
    int n, m;
    cin >> n >> m;
    VI a(n);
    /* jur */
    VI b(m);
    /* caxik */
    for (int& x : a) cin >> x;
    for (int& x : b) cin >> x;
    
    string ans(n, 'L');
    auto can = [&](ll d) {
        int j = 0;
        // verjin chjrac caxik@
        rep(i, n) {
            if (b[j] < a[i] - d) return false;

            if (b[j] < a[i]) {
                // a[i]-n pti dzax naye
                ans[i] = 'L';
                while (j < m && b[j] <= a[i]) j++;
            } else {
                // a[i]-n pti aj naye
                ans[i] = 'R';
                while (j < m && b[j] <= a[i]+d) j++;
            }
            if (j == m) break;
        }
        return j == m;
    };

    /*replr(i, 0, 200) cout << can(i); cout << endl;*/

    ll l = 0, r = 2e9;
    while (l + 1 < r) {
        ll m = (l + r) / 2;
        if (can(m)) r = m;
        else l = m;
    }
    if (r == 2e9) cout << -1 << endl;
    else {
        can(r);
        cout << r << endl;
        cout << ans << endl;
    }
}
 
int main() {
	ios_base::sync_with_stdio(false);
	cin.tie(NULL), cout.tie(NULL);
	/*freopen("mincross.in", "r", stdin); */
	/*freopen("test.out", "w", stdout); */
	int t = 1;
	/*cin >> t; */
	while (t--) solve();
}





# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Correct
2 Correct 0 ms 344 KB Correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Correct
2 Correct 6 ms 600 KB Correct
3 Correct 0 ms 348 KB Correct
4 Correct 6 ms 860 KB Correct
5 Correct 7 ms 856 KB Correct
6 Correct 0 ms 348 KB Correct
7 Correct 0 ms 348 KB Correct
8 Correct 1 ms 348 KB Correct
9 Correct 0 ms 348 KB Correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Correct
2 Correct 7 ms 860 KB Correct
3 Correct 2 ms 604 KB Correct
4 Correct 23 ms 3164 KB Correct
5 Correct 26 ms 3160 KB Correct
6 Correct 0 ms 348 KB Correct
7 Correct 0 ms 348 KB Correct
8 Correct 12 ms 3152 KB Correct
9 Correct 11 ms 1372 KB Correct
10 Correct 17 ms 1372 KB Correct
11 Correct 11 ms 860 KB Correct
12 Correct 12 ms 860 KB Correct
13 Correct 27 ms 1132 KB Correct
14 Correct 18 ms 1112 KB Correct
15 Correct 18 ms 1220 KB Correct
16 Correct 15 ms 1116 KB Correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Correct
2 Correct 0 ms 344 KB Correct
3 Correct 0 ms 348 KB Correct
4 Correct 0 ms 348 KB Correct
5 Incorrect 0 ms 348 KB User solution is worse than jury's solution
6 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Correct
2 Correct 14 ms 900 KB Correct
3 Incorrect 31 ms 1364 KB User solution is worse than jury's solution
4 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 0 ms 344 KB Correct
2 Correct 0 ms 344 KB Correct
3 Correct 6 ms 600 KB Correct
4 Correct 0 ms 348 KB Correct
5 Correct 6 ms 860 KB Correct
6 Correct 7 ms 856 KB Correct
7 Correct 0 ms 348 KB Correct
8 Correct 0 ms 348 KB Correct
9 Correct 1 ms 348 KB Correct
10 Correct 0 ms 348 KB Correct
11 Correct 7 ms 860 KB Correct
12 Correct 2 ms 604 KB Correct
13 Correct 23 ms 3164 KB Correct
14 Correct 26 ms 3160 KB Correct
15 Correct 0 ms 348 KB Correct
16 Correct 0 ms 348 KB Correct
17 Correct 12 ms 3152 KB Correct
18 Correct 11 ms 1372 KB Correct
19 Correct 17 ms 1372 KB Correct
20 Correct 11 ms 860 KB Correct
21 Correct 12 ms 860 KB Correct
22 Correct 27 ms 1132 KB Correct
23 Correct 18 ms 1112 KB Correct
24 Correct 18 ms 1220 KB Correct
25 Correct 15 ms 1116 KB Correct
26 Correct 0 ms 348 KB Correct
27 Correct 0 ms 348 KB Correct
28 Incorrect 0 ms 348 KB User solution is worse than jury's solution
29 Halted 0 ms 0 KB -